Hoe documenten indexeren met GroupDocs.Search voor Java

In de huidige data‑gedreven wereld is hoe documenten te indexeren efficiënt een cruciale vaardigheid voor elke Java‑ontwikkelaar die grote collecties bestanden verwerkt. Of je nu juridische contracten, financiële overzichten of interne rapporten verwerkt, een goed opgebouwde zoekindex stelt je in staat om het exacte stukje informatie in seconden te vinden in plaats van uren handmatig te scannen. Deze tutorial leidt je door het maken van een zoekindex, het toevoegen van documenten en het uitvoeren van zowel tekst‑gebaseerde als object‑gebaseerde queries met GroupDocs.Search voor Java.

Snelle antwoorden

  • Wat is de eerste stap om documenten te indexeren? Maak een Index‑instance die naar een map wijst waar de indexbestanden worden opgeslagen.
  • Welke methode voegt documenten toe aan een index? Roep index.add("PATH_TO_DOCUMENTS") aan om een directory te scannen en ondersteunde bestanden te importeren.
  • Kan ik numerieke bereiken doorzoeken? Ja – gebruik een tekstquery zoals "400 ~~ 4000" of een objectquery via SearchQuery.createNumericRangeQuery. De createNumericRangeQuery‑methode bouwt een numeriek bereik‑query‑object.
  • Heb ik een licentie nodig? Een gratis proefversie werkt voor evaluatie; een commerciële licentie ontgrendelt de volledige functionaliteit en verwijdert gebruikslimieten.
  • Welke Java‑versie is vereist? JDK 8 of hoger wordt ondersteund.

Wat is hoe documenten te indexeren met GroupDocs.Search?

Documenten indexeren creëert een doorzoekbare token‑opslag voor elk bestand, waardoor de engine overeenkomsten kan ophalen zonder elke keer de originele bestanden te lezen. Deze pre‑processing stap zet ruwe inhoud om in een geoptimaliseerde index die in milliseconden kan worden doorzocht. De index slaat termen, posities en metadata op, waardoor snelle frase‑ en nabijheidszoekopdrachten over alle ondersteunde documenttypen mogelijk zijn.

Waarom GroupDocs.Search voor Java gebruiken?

Zoekbewerkingen voltooien doorgaans in minder dan 50 ms op een collectie van 10 000 bestanden (gemiddeld 1 KB per stuk) die draait op een standaard 2‑CPU, 8 GB VM. De bibliotheek ondersteunt 30+ input and output formats—inclusief PDF, DOCX, XLSX, PPTX, TXT en HTML—zodat je praktisch elk zakelijk document kunt indexeren zonder extra converters. De flexibele API laat je tekst‑queries, numerieke bereiken en complexe object‑queries combineren, terwijl incrementele updates je in staat stellen nieuwe bestanden toe te voegen zonder de volledige index opnieuw te bouwen.

Vereisten

  • Maven geïnstalleerd voor afhankelijkheidsbeheer.
  • Een IDE zoals IntelliJ IDEA of Eclipse.
  • Basiskennis van Java (OOP‑concepten, exception handling).

GroupDocs.Search voor Java instellen

Maven-configuratie

Add the repository and dependency to your 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>

Directe download

You can also download the latest JAR from GroupDocs.Search voor Java releases.

Stappen voor het verkrijgen van een licentie

  1. Gratis proefversie – verken de bibliotheek zonder kosten.
  2. Tijdelijke licentie – vraag een kortetermijn‑sleutel aan voor uitgebreide evaluatie.
  3. Aankoop – verkrijg een volledige licentie voor productiegebruik.

Basisinitialisatie en -configuratie

Om documenten aan de index toe te voegen, maak je eerst een Index‑object dat naar de map wijst waar de indexbestanden worden opgeslagen:

Index is de kernklasse die een doorzoekbare index op schijf vertegenwoordigt.

import com.groupdocs.search.Index;

// Initialize the index by specifying a directory path
Index index = new Index("YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\NumericRangeSearch");

Deze regel maakt (of opent) een index die klaar is om documenten te ontvangen.

Implementatiegids

Documenten maken en indexeren

Hoe documenten aan de index toe te voegen

De add‑methode scant een map en slaat doorzoekbare gegevens op voor elk bestand. Ze verwerkt elk ondersteund document recursief, extraheert tekst en metadata, en schrijft tokens naar de indexmap die je eerder hebt opgegeven.

import com.groupdocs.search.Index;

// Initialize an index at the specified path
Index index = new Index("YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\NumericRangeSearch");

// Add documents from a directory for indexing
index.add("YOUR_DOCUMENT_DIRECTORY");
  • Parameters: De pad‑string wijst naar de map die de bestanden bevat die je wilt indexeren.
  • Purpose: Na deze stap bevat de index tokens van alle ondersteunde documenttypen, waardoor snelle zoekopdrachten over de volledige collectie mogelijk zijn.

Tekst‑query zoeken

Hoe een tekstgebaseerde numerieke bereik‑zoekopdracht uit te voeren

Je kunt zoeken met een eenvoudige tekenreeks die een bereik definieert. De engine interpreteert de ~~‑operator als “tussen” en retourneert alle documenten die nummers binnen de opgegeven limieten bevatten.

import com.groupdocs.search.*;
import com.groupdocs.search.results.*;

// Define a query for numeric values within a specific range
String query1 = "400 ~~ 4000";

// Execute text-based search on indexed data
SearchResult result1 = index.search(query1);
  • Parameters: De query‑string "400 ~~ 4000" vertelt de engine om nummers tussen 400 en 4000 te vinden.
  • Return value: SearchResult bevat de lijst met overeenkomende documenten en markeert de bijpassende fragmenten.

Object‑query zoeken

Hoe een object‑query te gebruiken voor numerieke bereiken

Object‑gebaseerde queries geven je programmatische controle over zoekcriteria, waardoor je meerdere voorwaarden kunt combineren of queries dynamisch tijdens runtime kunt bouwen.

import com.groupdocs.search.*;
import com.groupdocs.search.results.*;

// Create a numeric range query object
SearchQuery query2 = SearchQuery.createNumericRangeQuery(400, 4000);

// Perform search using the query object
SearchResult result2 = index.search(query2);
  • Parameters: createNumericRangeQuery ontvangt de start‑ en eind‑integers.
  • Purpose: Deze methode is ideaal wanneer je resultaten moet filteren op numerieke velden zoals factuurtotalen, leeftijden of productcodes.

Praktische toepassingen

Hier zijn enkele scenario’s uit de praktijk waar hoe documenten te indexeren een doorslaggevende factor wordt:

  1. Juridisch documentbeheer – vind clausules, zaaknummers of data in duizenden contracten binnen enkele seconden.
  2. Financiële rapportage – haal transacties op die binnen een specifiek geldbereik vallen zonder elke spreadsheet te scannen.
  3. Voorraadbeheer – vind items op serienummers, batchcodes of SKU‑bereiken in een gedistribueerd bestandssysteem.

Integratie van GroupDocs.Search met databases, cloudopslag of berichtwachtrijen kan documentworkflows verder automatiseren.

Prestatie‑overwegingen

  • Regelmatige indexupdates: Voer index.add opnieuw uit voor nieuwe bestanden om de index actueel te houden.
  • Resource management: Houd heap‑gebruik in de gaten; grote indexen profiteren van geoptimaliseerde JVM‑garbage‑collection‑instellingen.
  • Query optimisation: Gebruik object‑queries voor complexe filters om onnodig scannen te verminderen en de responstijd te verbeteren.

Veelvoorkomende problemen en oplossingen

IssueWhy it happensFix
Search returns no resultsIndex not built or folder path incorrectVerify index.add executed on the correct directory and that the index folder is writable.
OutOfMemoryError during indexingVery large files or insufficient heapIncrease JVM -Xmx value or index files in smaller batches.
Unsupported file formatFile type not recognised by GroupDocs.SearchEnsure the extension is among the supported list (PDF, DOCX, XLSX, PPTX, TXT, HTML, etc.).

Veelgestelde vragen

Q: Hoe werk ik een bestaande index bij met nieuwe documenten?
A: Roep index.add("NEW_DOCUMENT_PATH") opnieuw aan; de bibliotheek voegt de nieuwe items samen zonder de hele index opnieuw te creëren.

Q: Kan GroupDocs.Search verschillende bestandsformaten aan?
A: Ja, het ondersteunt 30+ formaten—incl. PDF, DOCX, XLSX, PPTX, TXT en HTML—zodat je praktisch elk zakelijk document kunt indexeren.

Q: Wat zijn de systeemvereisten voor het gebruik van GroupDocs.Search?
A: Java 8+ runtime, minimaal 2 GB RAM voor bescheiden collecties (grotere sets profiteren van 4 GB+), en lees‑/schrijftoegang tot de indexmap.

Q: Hoe kan ik zoek‑prestatieproblemen oplossen?
A: Houd de index up‑to‑date, profileer je queries en controleer JVM‑geheugeninstellingen. Het verminderen van het aantal geïndexeerde velden of het gebruik van object‑queries kan de uitvoering ook versnellen.

Q: Is er ondersteuning voor synoniemen of fuzzy matching?
A: Ja, je kunt synoniemdictionaries en fuzzy search inschakelen via de SearchOptions‑klasse om de matching uit te breiden zonder relevantie te verliezen. De SearchOptions‑klasse configureert geavanceerd zoekgedrag zoals synoniemen en fuzzy matching.


Laatst bijgewerkt: 2026-08-10
Getest met: GroupDocs.Search 25.4 for Java
Auteur: GroupDocs

Gerelateerde tutorials