Maak Booleaanse Query Java: Beheers Booleaanse Zoekopdrachten met GroupDocs.Search voor Java
Zoeken in enorme collecties documenten kan aanvoelen als het zoeken naar een speld in een hooiberg. Create Boolean Query Java laat je de engine precies vertellen wat je nodig hebt—documenten die both termen bevatten, either term, of exclude ongewenste woorden. In deze gids lopen we door het opzetten van GroupDocs.Search for Java, het toevoegen van documenten aan een index, en het maken van krachtige booleaanse queries die je document retrieval java workflows verbeteren. Aan het einde kun je schone, onderhoudbare code schrijven die booleaanse queries in Java maakt met slechts een paar regels.
Snelle antwoorden
- Wat is een boolean AND query? Retourneert alleen documenten die all opgegeven termen bevatten.
- Hoe verschilt OR van AND? OR vindt documenten met any van de termen, waardoor de resultaatsverzameling wordt vergroot.
- Wanneer moet ik NOT gebruiken? Gebruik NOT om documenten met ongewenste woorden te filteren.
- Heb ik een licentie nodig? Een gratis proefversie werkt voor testen; een commerciële licentie is vereist voor productie.
- Welke Java‑versie is vereist? Java 8+ wordt ondersteund; JDK 11+ wordt aanbevolen.
Wat is create boolean query java?
create boolean query java verwijst naar het construeren van een zoekquery in Java die logische operatoren zoals AND, OR en NOT combineert via de GroupDocs.Search API. Door deze operatoren samen te stellen kun je nauwkeurig bepalen welke documenten overeenkomen, waardoor geavanceerde filtering, relevantie‑afstemming en complexe zoekscenario’s mogelijk worden.
Waarom GroupDocs.Search voor Java gebruiken?
- Hoge prestaties op grote documentensets – het kan 500 GB tekst indexeren en doorzoeken in minder dan een minuut op een standaard server.
- Rijke API die zowel tekst‑gebaseerde als object‑gebaseerde queries ondersteunt, zodat je de stijl kunt kiezen die bij je architectuur past.
- Ingebouwde taalondersteuning voor stemming, stop‑woorden en fuzzy matching in meer dan 30 talen.
- Eenvoudige integratie met Maven of directe JAR‑download, vereist slechts een paar regels code om te beginnen.
Vereisten
Voordat je begint, zorg dat je het volgende hebt:
- GroupDocs.Search for Java (v25.4 of later) – zie de downloadlink hieronder.
- JDK 8+ geïnstalleerd en geconfigureerd in je IDE (IntelliJ IDEA, Eclipse, enz.).
- Basiskennis van Java en Maven voor afhankelijkheidsbeheer.
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
Alternatively, download the latest JAR from the official site: GroupDocs.Search for Java releases.
Licentie‑acquisitie
Begin met een gratis proeflicentie om alle functies te verkennen. Voor productiegebruik koop je een commerciële licentie om de volledige functionaliteit te ontgrendelen.
Basisinitialisatie en configuratie
Create an index folder and instantiate the Index object:
import com.groupdocs.search.Index;
public class GroupDocsSetup {
public static void main(String[] args) {
String indexFolder = "path/to/index/directory";
Index index = new Index(indexFolder);
}
}
Hoe maak je boolean query java?
De Index‑klasse vertegenwoordigt een doorzoekbare collectie documenten die op schijf zijn opgeslagen. Een BooleanQuery combineert meerdere sub‑queries met logische operatoren. createAndQuery, createOrQuery en createNotQuery bouwen respectievelijk AND-, OR- en NOT‑sub‑queries. Laad of maak een Index‑instantie, voeg documenten toe, en bouw vervolgens een BooleanQuery‑object met createAndQuery, createOrQuery of createNotQuery. Roep index.search(query) aan om overeenkomende documenten op te halen. Dit patroon werkt zowel voor eenvoudige als complexe scenario’s en vereist slechts drie logische stappen: indexinitialisatie, documenttoevoeging en query‑uitvoering.
Boolean AND‑zoekopdracht
Overzicht
Een AND‑query beperkt de resultaten, waardoor de relevantie verbetert wanneer je documenten nodig hebt die aan meerdere criteria voldoen.
Implementatiestappen
Index initialiseren – dit toont ook add documents to index voor het AND‑scenario.
String indexFolder = "YOUR_OUTPUT_DIRECTORY/BooleanSearch/OperatorAnd"; Index index = new Index(indexFolder);Documenten indexeren
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY"; index.add(documentsFolder);Tekst‑query zoeken uitvoeren – met de eenvoudige tekenreeks‑syntaxis.
String query1 = "comfort AND promotion"; SearchResult result1 = index.search(query1);Object‑query zoeken uitvoeren – handig bij het programmatisch opbouwen van queries (search with and java).
import com.groupdocs.search.query.*; SearchQuery wordQuery1 = SearchQuery.createWordQuery("comfort"); SearchQuery wordQuery2 = SearchQuery.createWordQuery("promotion"); SearchQuery andQuery = SearchQuery.createAndQuery(wordQuery1, wordQuery2); SearchResult result2 = index.search(andQuery);
Boolean OR‑zoekopdracht
Overzicht
Een OR‑query is ideaal voor verkennende zoekopdrachten waarbij je documenten wilt vinden die ten minste één van meerdere trefwoorden bevatten (search with or java).
Implementatiestappen
Index initialiseren
String indexFolder = "YOUR_OUTPUT_DIRECTORY/BooleanSearch/OperatorOr"; Index index = new Index(indexFolder);Documenten indexeren
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY"; index.add(documentsFolder);Tekst‑query zoeken uitvoeren
String query1 = "comfort OR neque"; SearchResult result1 = index.search(query1);Object‑query zoeken uitvoeren
SearchQuery wordQuery1 = SearchQuery.createWordQuery("comfort"); SearchQuery wordQuery2 = SearchQuery.createWordQuery("neque"); SearchQuery orQuery = SearchQuery.createOrQuery(wordQuery1, wordQuery2); SearchResult result2 = index.search(orQuery);
Boolean NOT‑zoekopdracht
Overzicht
Een NOT‑query helpt je irrelevante documenten te elimineren, bijvoorbeeld door de merknaam van een concurrent te filteren (boolean search examples java).
Implementatiestappen
Index initialiseren
String indexFolder = "YOUR_OUTPUT_DIRECTORY/BooleanSearch/OperatorNot"; Index index = new Index(indexFolder);Documenten indexeren
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY"; index.add(documentsFolder);Tekst‑query zoeken uitvoeren
String query1 = "sportsman AND NOT Kynynmound"; SearchResult result1 = index.search(query1);Object‑query zoeken uitvoeren
SearchQuery wordQuery1 = SearchQuery.createWordQuery("sportsman"); SearchQuery wordQuery2 = SearchQuery.createWordQuery("Kynynmound"); SearchQuery notQuery = SearchQuery.createNotQuery(wordQuery2); SearchQuery andQuery = SearchQuery.createAndQuery(wordQuery1, notQuery); SearchResult result2 = index.search(andQuery);
Complexe Booleaanse Queries
Overzicht
Complexe queries stellen je in staat real‑world zoekscenario’s te modelleren, zoals “vind sportartikelen die positief zijn maar sluit elke vermelding van specifieke atleten uit”.
Implementatiestappen
Index initialiseren
String indexFolder = "YOUR_OUTPUT_DIRECTORY/BooleanSearch/ComplexQueries"; Index index = new Index(indexFolder);Documenten indexeren
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY"; index.add(documentsFolder);Tekst‑query zoeken uitvoeren
String query1 = "(sportsman AND favourable) AND NOT (Kynynmound OR Murray)"; SearchResult result1 = index.search(query1);Object‑query zoeken uitvoeren
SearchQuery word1Query = SearchQuery.createWordQuery("sportsman"); SearchQuery word2Query = SearchQuery.createWordQuery("favourable"); SearchQuery andQuery = SearchQuery.createAndQuery(word1Query, word2Query); SearchQuery word3Query = SearchQuery.createWordQuery("Kynynmound"); SearchQuery word4Query = SearchQuery.createWordQuery("Murray"); SearchQuery orQuery = SearchQuery.createOrQuery(word3Query, word4Query); SearchQuery notQuery = SearchQuery.createNotQuery(orQuery); SearchQuery rootQuery = SearchQuery.createAndQuery(andQuery, notQuery); SearchResult result2 = index.search(rootQuery);
Praktische toepassingen van java boolean and or queries
- Document Management Systems – vind contracten die zowel “confidential” AND “renewal” bevatten.
- Legal Research – filter jurisprudentie met AND/ OR terwijl verouderde wetten worden uitgesloten met NOT.
- Customer Support – haal tickets op die “login” AND “error” vermelden, maar niet “resolved”.
- Content Curation – verzamel blogposts over “cloud” OR “serverless” voor een nieuwsbrief.
Veelvoorkomende valkuilen & probleemoplossing
- Ontbrekende indexverversing – roep na het toevoegen van nieuwe documenten
index.update()aan om te zorgen dat ze doorzoekbaar zijn. - Onjuiste operator‑spatiëring – GroupDocs.Search verwacht spaties rond operatoren (
AND,OR,NOT). - Hoofdlettergevoeligheid – queries zijn standaard niet hoofdlettergevoelig, maar aangepaste analyzers kunnen dit beïnvloeden.
- Grote resultaatsverzamelingen – gebruik paginering (
search(query, 0, 100)) om geheugenoverbelasting te voorkomen.
Veelgestelde vragen
Q: Kan ik meer dan twee termen combineren in een AND‑query?
A: Absoluut. Je kunt meerdere createWordQuery‑objecten ketenen met createAndQuery, of simpelweg "term1 AND term2 AND term3" schrijven in de tekst‑query.
Q: Ondersteunt GroupDocs.Search wildcard‑ of fuzzy‑zoekopdrachten?
A: Ja. Voeg * toe voor een wildcard (bijv. promot*) of gebruik ~ voor fuzzy matching (bijv. comfort~).
Q: Hoe beperk ik de zoekopdracht tot specifieke bestandstypen?FileTypeQuery beperkt zoekresultaten tot bepaalde bestandsformaten zoals PDF of DOCX.
A: Gebruik de FileTypeQuery‑klasse om resultaten te beperken tot PDF’s, DOCX, enz., en combineer deze met je booleaanse query.
Q: Wat is de beste manier om de indexeringsprestaties te monitoren?
A: Schakel de ingebouwde logger in (index.getLogger().setLevel(Level.INFO)) en bekijk de timing‑statistieken na elke add‑operatie.
Q: Is er een manier om de relevantie van bepaalde termen te verhogen?BoostQuery verhoogt de relevantiescore van opgegeven termen in een zoekquery.
A: Ja. Omhul belangrijke woorden met BoostQuery om hun gewicht in het scoring‑algoritme te verhogen.
Last Updated: 2026-07-21
Tested With: GroupDocs.Search 25.4 (Java)
Author: GroupDocs