Crea un indice di documenti con GroupDocs.Search per Java: Guida completa

Nell’era digitale odierna, la capacità di creare un indice di documenti rapidamente e di cercare al suo interno in modo efficiente è un vero punto di svolta per qualsiasi organizzazione. Che tu stia costruendo un sistema di gestione documentale o un motore di ricerca personalizzato, GroupDocs.Search per Java ti fornisce gli strumenti per estrarre testo, serializzare dati e eseguire operazioni di ricerca full‑text Java con facilità. Questo tutorial ti guida passo passo—dall’estrazione del testo PDF all’aggiunta dei dati all’indice e alla ricerca nei documenti indicizzati.

Risposte rapide

  • Qual è lo scopo principale? Creare un indice di documenti ricercabile usando GroupDocs.Search per Java.
  • Quale versione della libreria? GroupDocs.Search 25.4 (o l’ultima release).
  • È necessaria una licenza? Una prova gratuita è sufficiente per lo sviluppo; è richiesta una licenza completa per la produzione.
  • Posso indicizzare PDF? Sì—estrai il testo PDF e aggiungilo all’indice.
  • Come eseguire una ricerca? Usa il metodo index.search(query) dopo aver aggiunto i dati.

Cos’è un indice di documenti?

Un indice di documenti è una raccolta strutturata di termini ricercabili estratti dai tuoi file. Creando un indice di documenti, abiliti ricerche full‑text rapide su grandi repository, migliorando notevolmente la velocità e l’accuratezza del recupero.

Perché usare GroupDocs.Search per Java?

  • Estrazione robusta – Gestisce PDF, Word, Excel e altro.
  • Serializzazione semplice – Memorizza i dati estratti come array di byte per un riutilizzo successivo.
  • Indicizzazione scalabile – Indicizza milioni di documenti in modo efficiente.
  • Linguaggio di query potente – Supporta query Java di ricerca full‑text complesse.

Prerequisiti

  • GroupDocs.Search per Java (Versione 25.4 o successiva).
  • Java Development Kit (JDK) compatibile con la tua versione di GroupDocs.
  • Un IDE come IntelliJ IDEA o Eclipse.
  • Maven per la gestione delle dipendenze.

Configurare GroupDocs.Search per Java

Per prima cosa, aggiungi la libreria al tuo progetto.

Configurazione Maven
Includi il seguente nel file pom.xml:

<repositories>
    <repository>
        <id>repository.groupdocs.com</id>
        <name>GroupDocs Repository</name>
        <url>https://releases.groupdocs.com/search/java/</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-search</artifactId>
        <version>25.4</version>
    </dependency>
</dependencies>

Download diretto
In alternativa, scarica l’ultima versione da GroupDocs.Search for Java releases.

Acquisizione della licenza

  • Prova gratuita – Prova tutte le funzionalità con una licenza temporanea.
  • Acquisto – Ottieni accesso completo e supporto prioritario.

Implementazione passo‑a‑passo

Come estrarre testo da PDF (e altri documenti)

Estrarre testo grezzo o formattato è il primo passo per creare un indice di documenti.

String documentPath = "YOUR_DOCUMENT_DIRECTORY/Lorem ipsum.pdf";
Extractor extractor = new Extractor();
Document document = Document.createFromFile(documentPath);
ExtractionOptions extractionOptions = new ExtractionOptions();
extractionOptions.setUseRawTextExtraction(false); // Extract with formatting
ExtractedData extractedData = extractor.extract(document, extractionOptions);

Suggerimento: Imposta setUseRawTextExtraction(true) se ti serve testo semplice senza formattazione.

Come serializzare i dati estratti

La serializzazione ti consente di memorizzare i dati estratti per indicizzarli in seguito.

ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
extractedData.serialize(outputStream);
byte[] serializedArray = outputStream.toByteArray();

Come deserializzare i dati estratti

Quando sei pronto a costruire l’indice, converti l’array di byte nuovamente in un oggetto.

ByteArrayInputStream inputStream = new ByteArrayInputStream(serializedArray);
ExtractedData deserializedData = ExtractedData.deserialize(inputStream);

Come creare un indice di documenti

Ora che hai deserializedData, puoi creare l’indice che conterrà i termini ricercabili.

String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/SeparateDataExtraction";
com.groupdocs.search.Index index = new com.groupdocs.search.Index(indexFolder);

Come aggiungere dati all’indice ed eseguire una ricerca

Aggiungere dati e interrogare l’indice completa il flusso di lavoro creare indice di documenti.

ExtractedData[] dataToIndex = new ExtractedData[] { deserializedData };
index.add(dataToIndex, new IndexingOptions());
String query = "ipsum";
SearchResult result = index.search(query);

Consiglio professionale: Usa index.search("your query", SearchOptions) per perfezionare il ranking di rilevanza.

Casi d’uso comuni

  1. Sistemi di gestione documentale – Trova rapidamente contratti, fatture o politiche.
  2. Motori di ricerca basati sul contenuto – Alimenta basi di conoscenza interne con capacità di ricerca full‑text Java.
  3. Soluzioni di archiviazione dati – Indicizza record storici per un recupero immediato.

Considerazioni sulle prestazioni

  • Gestione della memoria: Regola la dimensione dell’heap JVM per grandi lotti di documenti.
  • Opzioni di indicizzazione: Disattiva funzionalità non necessarie (ad es., term vectors) per velocizzare l’indicizzazione.
  • Aggiornamenti regolari: Mantieni GroupDocs.Search aggiornato per beneficiare delle patch di prestazioni.

Domande frequenti

D: Come gestire file PDF molto grandi in modo efficiente?
R: Esegui lo streaming del file usando Extractor e processalo a blocchi; aumenta anche l’heap JVM se necessario.

D: Posso personalizzare la sintassi della query di ricerca?
R: Sì—GroupDocs.Search supporta operatori booleani, wildcard e ricerche di prossimità.

D: Cosa fare se la serializzazione fallisce?
R: Verifica che tutti gli oggetti implementino Serializable e cattura IOException per registrare i dettagli.

D: È possibile indicizzare solo sezioni specifiche di un documento?
R: Assolutamente—configura ExtractionOptions per filtrare pagine o sezioni prima dell’indicizzazione.

D: Come aggiornare a una versione più recente di GroupDocs.Search?
R: Aggiorna il numero di versione nel tuo pom.xml ed esegui mvn clean install; consulta la guida di migrazione per le modifiche incompatibili.

Risorse


Ultimo aggiornamento: 2025-12-18
Testato con: GroupDocs.Search 25.4 per Java
Autore: GroupDocs