Criar índice de pesquisa java com GroupDocs.Search para Java

Neste guia abrangente, você aprenderá como create search index java aplicações usando GroupDocs.Search for Java, e também verá como highlight search results java para que os usuários possam identificar instantaneamente correspondências dentro de PDFs, arquivos Office, páginas HTML e muito mais. Seja construindo um utilitário de desktop leve ou um serviço de busca empresarial de alto desempenho, os passos abaixo cobrem tudo, desde a indexação de formatos diversos até o ajuste fino de desempenho e a execução de um exemplo de consulta booleana Java.

Visão geral rápida

  • Index diverse document types – PDFs, DOCX, PPTX, XLSX, HTML e mais de 150 outros formatos.
  • Run advanced queries – Boolean, fuzzy, wildcard, phrase, regex e faceted searches.
  • Leverage language processing – Synonyms, spell checking, homophone detection e custom dictionaries.
  • Integrate OCR – Extract text from scanned images e adicione ao índice pesquisável.
  • Optimize performance – Control memory usage, index size e query response times para índices que atingem escala multi‑gigabyte.
  • Highlight results – Show matches directly in the original document ou em uma pré‑visualização HTML com cores personalizáveis e classes CSS.

Abaixo está uma lista selecionada de tutoriais dedicados que guiam você através de cada capacidade passo a passo.

Respostas rápidas

  • O que faz “highlight search results java”? Ele marca visualmente os termos correspondentes dentro do documento original ou de uma pré‑visualização HTML gerada, permitindo que os usuários localizem trechos relevantes instantaneamente.
  • Qual biblioteca fornece faceted search java? GroupDocs.Search for Java inclui suporte interno a faceted search que agrupa resultados por campos de metadados.
  • Posso implementar OCR java com a mesma API? Sim—habilite o motor OCR com uma única configuração OcrOptions e o mesmo fluxo de indexação extrairá texto das imagens.
  • Preciso de licença para uso em produção? Uma licença comercial é necessária após o término do período de avaliação.
  • A API é compatível com Java 17 e posteriores? Ela oferece suporte total a Java 8+, foi testada em Java 17 e funciona em qualquer plataforma compatível com JVM.

O que é “highlight search results java”?

Highlighting search results in Java means programmatically applying visual cues—such as background colors or bold styling—to the exact words or phrases that matched a user’s query. Essa técnica reduz o tempo que os usuários gastam analisando documentos longos e melhora a usabilidade geral da busca.

Por que usar GroupDocs.Search para Java?

GroupDocs.Search for Java indexes and queries thousands of documents in under two seconds on a standard 8‑core server. Ele suporta mais de 150 formatos de arquivo, processa índices multi‑gigabyte sem carregar toda a coleção na memória e oferece OCR pronto‑para‑uso, faceted search e tratamento de sinônimos—tudo através de uma API fluente e bem documentada.

Pré-requisitos

  • Java 8 ou mais recente (Java 17 recomendado)
  • Maven ou Gradle para gerenciamento de dependências
  • Uma licença válida do GroupDocs.Search for Java (versão de avaliação disponível)

Guia passo a passo

Passo 1: configurar o projeto

Crie um projeto Maven ou Gradle e adicione a dependência GroupDocs.Search. Coloque seu arquivo de licença (GroupDocs.Search.lic) na pasta src/main/resources para que o SDK possa carregá‑lo automaticamente.

Passo 2: criar um índice

Index é a classe central que representa um repositório pesquisável em disco.

Index index = new Index("path/to/index/folder");

Depois de instanciar o Index, chame add para cada documento que você deseja tornar pesquisável. O SDK detecta automaticamente o tipo de arquivo e extrai o texto.

Passo 3: habilitar OCR (implement OCR java)

OcrOptions configura o motor OCR interno.

OcrOptions ocr = new OcrOptions();
ocr.setLanguage("eng");
ocr.setDpi(300);

Anexe a instância OcrOptions à chamada de indexação para que imagens escaneadas sejam convertidas em texto pesquisável.

Passo 4: executar uma consulta de busca

SearchOptions constrói a consulta que você envia ao índice.

SearchOptions options = new SearchOptions()
    .setQuery("invoice")
    .setBooleanOperator(BooleanOperator.AND)
    .setFuzzy(true);

Você pode combinar um Java boolean query example com filtros faceted, curingas ou padrões regex para refinar ainda mais os resultados.

Passo 5: realçar resultados de busca java

Highlight é uma classe utilitária que gera uma versão realçada do documento correspondente.

HighlightOptions highlight = new HighlightOptions()
    .setColor(Color.YELLOW)
    .setCssClass("search-highlight");
HighlightResult result = Highlight.apply(searchResult, highlight);

A API retorna um arquivo PDF modificado ou um trecho HTML onde cada termo correspondente está envolto com o estilo escolhido.

Passo 6: revisar e otimizar

Use a API de estatísticas integrada para monitorar o tamanho do índice, consumo de memória e latência de consultas. Ajuste maxMemoryUsage ou habilite compressão (setCompression(true)) para manter o índice enxuto ao lidar com milhões de registros.

Problemas comuns e soluções

  • Nenhum destaque aparece: Verifique se você passou um objeto HighlightOptions com um formato de saída suportado (HTML ou PDF).
  • OCR não reconhece texto: Certifique‑se de que os pacotes de idioma estejam instalados e que as imagens de origem atendam à recomendação mínima de 300 dpi.
  • Faceted search retorna buckets vazios: Confirme que os campos que você pretende facetizar foram indexados com o tipo Facet durante o passo 2.

Perguntas frequentes

Q: Posso usar faceted search java junto com correspondência fuzzy?
A: Sim—você pode encadear filtros facet e consultas fuzzy no mesmo construtor SearchOptions, permitindo refinar resultados enquanto tolera erros de digitação.

Q: O realce funciona em PDFs criptografados?
A: Funciona apenas quando você fornece a senha correta ao adicionar o documento ao índice; o SDK então descriptografa, realça e re‑criptografa a saída.

Q: Quão grande pode ficar um índice antes que o desempenho degrade?
A: A biblioteca lida de forma confiável com índices multi‑gigabyte; habilitar compressão e ajustar maxMemoryUsage permite manter tempos de consulta abaixo de 200 ms mesmo com 10 milhões de documentos.

Q: Existe uma maneira de personalizar a cor do destaque?
A: Absolutamente. Use HighlightOptions.setColor(Color.YELLOW) ou forneça uma classe CSS personalizada para saída HTML via setCssClass.

Q: Qual versão do GroupDocs.Search foi testada com este guia?
A: Os exemplos foram validados com GroupDocs.Search for Java 23.9.

Tópicos relacionados que você pode explorar

Visão geral dos recursos de busca de documentos Java

GroupDocs.Search for Java oferece um conjunto abrangente de capacidades para construir aplicações de busca poderosas:

  • Suporte a múltiplos formatos – Mais de 150 formatos de entrada e saída, incluindo PDF, DOCX, PPT, XLS, HTML e arquivos de imagem.
  • Tipos avançados de busca – Opções de Boolean, fuzzy, wildcard, phrase, regex e faceted search java.
  • Indexação inteligente – Indexação rápida e configurável de documentos com compressão opcional.
  • Processamento de linguagem – Detecção de sinônimos, verificação ortográfica e reconhecimento de homófonos.
  • Suporte a OCR – Extraia e busque texto de imagens e documentos escaneados (implement OCR java).
  • Otimização de desempenho – Uso de memória ajustável e velocidade de consulta para índices multi‑gigabyte.
  • Realce de resultados – Destaque visual das correspondências de busca em documentos originais (highlight search results java).
  • Suporte a dicionários – Dicionários personalizados para terminologia e domínios especializados.
  • Busca distribuída – Construa soluções de busca escaláveis e fragmentadas com recursos de rede.
  • Velocidade impressionante – Processa e busca 10 000 documentos em menos de 2 segundos em um servidor típico.

Recursos de aprendizado


Última atualização: 2026-08-26
Testado com: GroupDocs.Search for Java 23.9
Autor: GroupDocs