Maîtriser GroupDocs.Search en Java - Guide complet de la gestion des index et de la recherche de documents
Introduction
Rencontrez-vous des difficultés à indexer et à rechercher parmi un grand nombre de documents ? Que vous travailliez avec des dossiers juridiques, des articles académiques ou des rapports d’entreprise, savoir how to create index rapidement et avec précision est essentiel. GroupDocs.Search for Java simplifie ce processus, vous permettant d’ajouter des documents à l’index, d’exécuter des recherches floues et de lancer des requêtes avancées en quelques lignes de code.
Vous découvrirez ci‑dessous tout ce dont vous avez besoin pour commencer, de la configuration de l’environnement à la création de requêtes de recherche sophistiquées.
Quick Answers
- What is the primary purpose of GroupDocs.Search? Créer des index consultables pour une large gamme de formats de documents.
- Can I add documents to index after it’s created? Oui — utilisez la méthode
index.add()pour inclure de nouveaux fichiers. - Does GroupDocs.Search support fuzzy search in Java? Absolument ; activez‑la via
SearchOptions. - How do I run a wildcard query in Java? Créez‑la avec
SearchQuery.createWildcardQuery(). - Is a license required for production use? Une licence valide GroupDocs.Search est requise pour les déploiements commerciaux.
Qu’est‑ce que “how to create index” dans le contexte de GroupDocs.Search ?
Créer un index signifie analyser un ou plusieurs documents source, extraire le texte consultable et stocker ces informations dans un format structuré qui peut être interrogé efficacement. L’index résultant permet des recherches ultra‑rapides, même parmi des milliers de fichiers.
Pourquoi utiliser GroupDocs.Search pour Java ?
- Broad format support: PDFs, Word, Excel, PowerPoint, et bien d’autres.
- Built‑in language features: Recherche floue, caractères génériques et capacités regex prêtes à l’emploi.
- Scalable performance: Gère de grandes collections de documents avec une utilisation mémoire configurable.
Prérequis
- GroupDocs.Search for Java version 25.4 ou ultérieure.
- Un IDE tel qu’IntelliJ IDEA ou Eclipse capable de gérer des projets Maven.
- JDK installé sur votre machine.
- Familiarité de base avec Java et les concepts de recherche.
Configuration de GroupDocs.Search pour Java
Vous pouvez ajouter la bibliothèque via Maven ou la télécharger manuellement.
Maven Setup:
<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>
Direct Download :
Vous pouvez également télécharger la dernière version depuis GroupDocs.Search for Java releases.
Acquisition de licence
- Free Trial : Explorez les fonctionnalités gratuitement.
- Temporary License : Prolongez la période d’essai.
- Full License : Nécessaire pour les environnements de production.
Une fois la bibliothèque disponible, initialisez‑la dans votre code Java :
import com.groupdocs.search.*;
public class InitializeSearch {
public static void main(String[] args) {
// Create an index instance
Index index = new Index("YOUR_DOCUMENT_DIRECTORY\\output");
System.out.println("GroupDocs.Search initialized successfully.");
}
}
Guide d’implémentation
How to Create Index avec GroupDocs.Search
Cette section vous guide à travers le processus complet de création d’un index et d’ajout de documents.
Définition des chemins
String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\CreateAndIndexDocuments";
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY";
Création de l’index
Index index = new Index(indexFolder);
System.out.println("Index created at: " + indexFolder);
Ajout de documents à l’index
index.add(documentsFolder);
System.out.println("Documents added to the index.");
Astuce : Assurez‑vous que les répertoires existent et ne contiennent que les fichiers que vous souhaitez rendre recherchables ; les fichiers non pertinents peuvent alourdir l’index.
Requête simple de mot avec options de recherche floue (fuzzy search java)
La recherche floue aide lorsque les utilisateurs commettent une faute de frappe ou que l’OCR introduit des erreurs.
SearchQuery subquery = SearchQuery.createWordQuery("future");
subquery.setSearchOptions(new SearchOptions());
subquery.getSearchOptions().getFuzzySearch().setEnabled(true);
subquery.getSearchOptions().getFuzzySearch()
.setFuzzyAlgorithm(new TableDiscreteFunction(3));
System.out.println("Fuzzy search enabled with a tolerance of 3.");
Requête avec caractères génériques Java
Les requêtes avec caractères génériques vous permettent de faire correspondre des motifs, comme tout mot commençant par un préfixe spécifique.
SearchQuery subquery = SearchQuery.createWildcardQuery(1);
System.out.println("Wildcard query created.");
Recherche Regex Java
Les expressions régulières vous offrent un contrôle fin sur la correspondance de motifs, parfait pour trouver des caractères répétés ou des structures de jetons complexes.
SearchQuery subquery = SearchQuery.createRegexQuery("(.)\\1");
System.out.println("Regex query created to find repeated characters.");
Combinaison de sous‑requêtes dans une requête de recherche de phrase
Vous pouvez mélanger des sous‑requêtes de type mot, caractère générique et regex pour créer des recherches de phrases sophistiquées.
SearchQuery subquery1 = SearchQuery.createWordQuery("future");
SearchQuery subquery2 = SearchQuery.createWildcardQuery(1);
SearchQuery subquery3 = SearchQuery.createRegexQuery("(.)\\1");
SearchQuery combinedQuery = SearchQuery.createPhraseSearchQuery(subquery1, subquery2, subquery3);
System.out.println("Combined phrase search query created.");
Configuration et exécution d’une recherche avec des options personnalisées
Ajuster les options de recherche vous permet de contrôler le nombre d’occurrences renvoyées, ce qui est utile pour de grands corpus.
SearchOptions options = new SearchOptions();
options.setMaxOccurrenceCountPerTerm(1000000);
options.setMaxTotalOccurrenceCount(10000000);
System.out.println("Custom search options configured.");
Index index = new Index("YOUR_DOCUMENT_DIRECTORY\\output\\ConfigureAndPerformSearch");
SearchQuery query = SearchQuery.createWordQuery("future");
SearchResult result = index.search(query, options);
System.out.println("Search performed with custom options.");
Applications pratiques
- Legal Document Management : Localisez rapidement les jurisprudences, les lois et les précédents.
- Academic Research : Indexez des milliers de publications de recherche et récupérez les citations en quelques secondes.
- Business Reports Analysis : Identifiez les chiffres financiers à travers plusieurs rapports trimestriels.
- Content Management Systems (CMS) : Offrez aux utilisateurs finaux une recherche rapide et précise sur les billets de blog et les articles.
- Customer Support Knowledge Bases : Réduisez les temps de réponse en récupérant instantanément les guides de dépannage pertinents.
Considérations de performance
- Optimize Indexing : Ré‑indexez périodiquement et supprimez les fichiers obsolètes pour garder l’index léger.
- Resource Usage : Surveillez la taille du tas JVM ; les grands index peuvent nécessiter plus de mémoire ou un stockage hors‑tas.
- Garbage Collection : Ajustez les paramètres de GC pour les services de recherche de longue durée afin d’éviter les pauses.
Conclusion
En suivant ce guide, vous savez maintenant how to create index, ajouter des documents à l’index et exploiter les recherches floues, à caractères génériques et regex en Java avec GroupDocs.Search. Ces capacités vous permettent de créer des expériences de recherche robustes qui s’adaptent à l’échelle de vos données.
Questions fréquentes
Q : Can I update an existing index without rebuilding it from scratch ?
A : Oui — utilisez index.add() pour ajouter de nouveaux fichiers ou index.update() pour actualiser les documents modifiés.
Q : How does fuzzy search handle different languages ?
A : L’algorithme flou intégré fonctionne sur les caractères Unicode, il prend donc en charge la plupart des langues dès le départ.
Q : Is there a limit to the number of documents I can index ?
A : En pratique, la limite dépend de l’espace disque disponible et de la mémoire JVM ; la bibliothèque est conçue pour des millions de documents.
Q : Do I need to restart the application after changing search options ?
A : Non—les options de recherche sont appliquées par requête, vous pouvez donc les ajuster à la volée.
Q : Where can I find more advanced query examples ?
A : La documentation officielle de GroupDocs.Search et la référence API offrent de nombreux exemples pour des scénarios complexes.
Dernière mise à jour : 2025-12-22
Testé avec : GroupDocs.Search for Java 25.4
Auteur : GroupDocs