Comment rechercher des documents avec GroupDocs.Search Java
Dans les applications d’entreprise modernes, comment rechercher des documents rapidement et avec précision est une exigence cruciale. Que vous manipuliez des contrats, des rapports ou tout autre grand référentiel de documents, GroupDocs.Search for Java vous offre un moteur de recherche plein texte robuste avec correspondance floue intégrée. Ce tutoriel vous guide à travers l’installation de la bibliothèque, la création d’un index, l’ajout de documents, la configuration du fuzzy search Java, et la récupération des résultats — le tout avec des explications claires et conversationnelles.
Réponses rapides
- Quelle est la première étape ? Installez la bibliothèque GroupDocs.Search Java via Maven ou téléchargez‑la directement.
- Comment créer un index ? Instanciez un objet
Indexpointant vers un dossier sur le disque ; la bibliothèque construit automatiquement la structure recherchable. - Puis‑je rechercher avec des fautes de frappe ? Oui — activez la recherche floue pour faire correspondre les termes mal orthographiés ou légèrement différents.
- Comment ajouter des documents ? Utilisez la méthode
addsur l’instanceIndex, en passant le dossier contenant vos fichiers. - Quelle version de Java est requise ? JDK 8 ou supérieur est pris en charge.
Qu’est‑ce que « comment rechercher des documents » dans le contexte de GroupDocs.Search ?
« Comment rechercher des documents » désigne le processus de création d’un index recherchable et d’émission de requêtes renvoyant les fichiers correspondants, éventuellement en utilisant une logique floue pour tolérer les erreurs d’orthographe. GroupDocs.Search gère la tokenisation, l’indexation et le classement en arrière‑plan, vous permettant de vous concentrer sur la logique métier.
Pourquoi utiliser GroupDocs.Search pour Java ?
GroupDocs.Search prend en charge plus de 30 formats de fichiers (y compris DOCX, PDF, TXT, HTML et XLSX) et peut indexer des documents de plusieurs centaines de pages sans charger le fichier complet en mémoire, offrant des réponses aux requêtes en moins d’une seconde sur du matériel serveur typique. Sa capacité de recherche floue améliore l’expérience utilisateur en renvoyant des résultats pertinents même lorsque les requêtes contiennent des fautes de frappe.
Prérequis
- Java Development Kit (JDK) : version 8 ou plus récente.
- IDE : IntelliJ IDEA, Eclipse ou tout éditeur compatible Java.
- Bibliothèque GroupDocs.Search pour Java : ajoutez‑la via Maven (recommandé) ou téléchargez le JAR.
Comment configurer GroupDocs.Search pour Java ?
Pour commencer, ajoutez la dépendance GroupDocs.Search à votre fichier de construction, assurez‑vous que l’URL du dépôt est accessible et vérifiez que la version du JDK répond aux exigences minimales. Une fois la bibliothèque résolue, vous pouvez importer ses classes dans votre code et créer un dossier d’index sur le disque où toutes les données recherchables seront stockées.
Configuration Maven
Ajoutez le dépôt et la dépendance à votre fichier pom.xml exactement comme indiqué dans le guide original.
<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>
Téléchargement direct
Sinon, obtenez le JAR depuis la page de version officielle :
GroupDocs.Search for Java releases
GroupDocs.Search Documentation
Comment créer un index ?
Créez un dossier d’index persistant où GroupDocs.Search stocke les données tokenisées. Chargez votre premier index avec une seule ligne de code —new Index("path/to/indexFolder"). La classe Index est le composant central qui représente une collection de documents recherchables en mémoire et sur disque.
import com.groupdocs.search.*;
String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Searching/SearchResults";
Index index = new Index(indexFolder);
Comment ajouter des documents à l’index ?
Utilisez la méthode add de l’instance Index pour pointer vers un dossier contenant vos fichiers source. Le moteur analysera récursivement les formats pris en charge, extraira le contenu textuel et mettra à jour les structures internes. Cet appel unique gère efficacement les gros lots, éliminant le besoin d’un traitement manuel fichier par fichier.
String documentFolder = "YOUR_DOCUMENT_DIRECTORY";
index.add(documentFolder);
Comment configurer la recherche floue Java ?
La classe FuzzySearchOptions définit des paramètres tels que la distance d’édition et la longueur du préfixe qui contrôlent la tolérance de la recherche aux fautes d’orthographe. L’objet SearchOptions regroupe tous les paramètres d’exécution de la recherche, y compris les options floues, les limites de résultats et les préférences de mise en évidence. Activez la correspondance floue en définissant FuzzySearchOptions sur l’objet SearchOptions. Cela indique au moteur de prendre en compte les termes dans une distance d’édition configurable, rendant les recherches tolérantes aux fautes d’orthographe.
String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Searching/SearchResults";
Index index = new Index(indexFolder);
Comment effectuer une opération de recherche ?
Appelez la méthode search sur l’objet Index, en fournissant la chaîne de requête et les SearchOptions configurées. Le moteur traite la requête, applique la correspondance floue si elle est activée, et classe les résultats en fonction des scores de pertinence. L’opération se termine rapidement même sur de grands index car la recherche s’effectue sur des structures de tokens pré‑construites. La méthode renvoie une collection SearchResult contenant les documents correspondants, le nombre de correspondances et les extraits mis en évidence.
String documentFolder = "YOUR_DOCUMENT_DIRECTORY";
index.add(documentFolder);
Comment traiter et afficher les résultats de recherche ?
SearchResult est une collection qui contient des objets SearchResultItem individuels, chacun décrivant un document correspondant, le nombre de correspondances et les extraits mis en évidence. Parcourez les éléments de SearchResult et affichez le chemin de chaque document, le nombre d’occurrences et les phrases correspondantes. Cette boucle simple vous permet de créer des tableaux d’interface, des journaux ou des réponses d’API qui montrent exactement pourquoi un document a été retenu.
import com.groupdocs.search.options.*;
SearchOptions options = new SearchOptions();
options.getFuzzySearch().setEnabled(true);
options.getFuzzySearch().setFuzzyAlgorithm(new TableDiscreteFunction(3));
Applications pratiques
Scénarios réels où comment rechercher des documents est important :
- Gestion de documents juridiques : Localisez des clauses ou des parties à travers des milliers de contrats en quelques secondes.
- Recherche académique : Récupérez des articles pertinents même si le terme de recherche est mal orthographié.
- Gestion de contenu d’entreprise : Alimentez les portails internes avec une recherche rapide et tolérante aux fautes de frappe à travers les rapports, les e‑mails et les présentations.
Considérations de performance
- Actualisation de l’index : Réexécutez
addouupdatechaque fois que les fichiers source changent pour garder les résultats à jour. - Gestion de la mémoire : GroupDocs.Search diffuse les gros fichiers, de sorte que l’empreinte mémoire reste faible même pour des PDF de 500 pages.
- Indexation par morceaux : Divisez les corpus massifs en plusieurs dossiers d’index pour paralléliser le traitement et améliorer la latence des requêtes.
Questions fréquemment posées
Q : Qu’est‑ce que la recherche floue Java et pourquoi est‑elle utile ?
R : La recherche floue Java permet une correspondance approximative de chaînes, autorisant les requêtes à renvoyer des résultats malgré les fautes de frappe ou les orthographes alternatives, ce qui améliore l’expérience de l’utilisateur final.
Q : Comment mettre à jour mon index après avoir ajouté de nouveaux fichiers ?
R : Appelez à nouveau index.add("new/files/folder") ; la bibliothèque fusionne intelligemment le nouveau contenu sans reconstruire l’intégralité de l’index.
Q : GroupDocs.Search peut‑il gérer les PDF protégés par mot de passe ?
R : Oui — fournissez le mot de passe dans DocumentLoadOptions lors de l’ajout du fichier, et le moteur déchiffrera et indexera le contenu.
Q : Existe‑t‑il une limite au nombre de documents que je peux indexer ?
R : La bibliothèque peut évoluer jusqu’à des millions de fichiers ; les performances dépendent du matériel et du stockage, pas d’une limite codée en dur.
Q : Où puis‑je trouver des exemples plus avancés ?
R : Consultez la documentation officielle pour des sujets plus approfondis comme les analyseurs personnalisés et le classement des résultats.
Conclusion
Vous savez maintenant comment rechercher des documents avec GroupDocs.Search pour Java, depuis la création d’un index jusqu’à l’activation de la recherche floue Java et le traitement des résultats. Mettez en œuvre ces étapes pour offrir des expériences de recherche rapides et tolérantes aux fautes de frappe dans toute application Java.
Dernière mise à jour : 2026-05-28
Testé avec : GroupDocs.Search 23.10 for Java
Auteur : GroupDocs
String query = "water OR \"Lorem ipsum\"";
SearchResult result = index.search(query, options);
for (int i = 0; i < result.getDocumentCount(); i++) {
FoundDocument document = result.getFoundDocument(i);
System.out.println("\tDocument: " + document.getDocumentInfo().getFilePath());
System.out.println("\tOccurrences: " + document.getOccurrenceCount());
for (FoundDocumentField field : document.getFoundFields()) {
System.out.println("\t\tField: " + field.getFieldName());
if (field.getTerms() != null) {
for (int k = 0; k < field.getTerms().length; k++) {
System.out.println("\t\t\t" + field.getTerms()[k] + " - " + field.getTermsOccurrences()[k]);
}
}
}
}