Recherche par attribut Java avec le guide GroupDocs.Search
Vous cherchez à améliorer votre système de gestion de documents en modifiant et indexant dynamiquement les attributs des documents avec Java ? Vous êtes au bon endroit ! Ce tutoriel explore en profondeur l’utilisation de la puissante bibliothèque GroupDocs.Search for Java pour search by attribute java, modifier les attributs des documents indexés et les ajouter lors du processus d’indexation. Que vous construisiez un portail consultable, une archive de conformité ou une application intelligente basée sur le contenu, maîtriser ces techniques vous fera gagner du temps et améliorera les performances.
Réponses rapides
- What is “search by attribute java”? C’est la capacité de filtrer les résultats de recherche en utilisant des métadonnées personnalisées attachées à chaque document.
- Can I modify attributes after indexing? Oui—utilisez
AttributeChangeBatchpour mettre à jour en lot les attributs des documents. - How do I add attributes while indexing? Abonnez‑vous à l’événement
FileIndexinget définissez les attributs par programme. - Do I need a license? Un essai gratuit suffit pour l’évaluation ; une licence permanente est requise pour la production.
- Which Java version is required? Java 8 ou supérieur est recommandé.
Qu’est‑ce que “search by attribute java” ?
Search by attribute java vous permet d’interroger les documents en fonction de leurs métadonnées (attributs) plutôt que seulement de leur contenu. En attachant des paires clé‑valeur comme public, main ou key à chaque fichier, vous pouvez rapidement restreindre les résultats au sous‑ensemble le plus pertinent.
Pourquoi utiliser le marquage dynamique des métadonnées ?
- Dynamic categorization – maintenez les métadonnées synchronisées avec l’évolution des règles métier.
- Faster filtering – les filtres d’attributs sont évalués avant la recherche en texte intégral, ce qui accélère les temps de réponse.
- Compliance tracking – étiquetez les documents selon les politiques de conservation ou les exigences d’audit.
- Batch update attributes – modifiez de nombreux documents en une seule opération sans ré‑indexer l’ensemble.
Prérequis
- Java 8+ (JDK 8 ou plus récent)
- GroupDocs.Search for Java library (voir la configuration Maven ci‑dessous)
- Connaissances de base en Java et concepts d’indexation
Configuration de GroupDocs.Search pour Java
Configuration Maven
<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, téléchargez la dernière version depuis GroupDocs.Search for Java releases.
Si vous préférez ne pas utiliser d’outil de construction comme Maven, téléchargez le JAR depuis le site GroupDocs.
Obtention de licence
- Commencez avec un essai gratuit pour explorer les fonctionnalités.
- Pour une utilisation prolongée, obtenez une licence temporaire ou complète via la page de licence.
Initialisation de base
import com.groupdocs.search.Index;
// Initialize an index in a specified directory
Index index = new Index("YOUR_OUTPUT_DIRECTORY/ChangeAttributes");
Comment modifier les attributs des documents (mise à jour par lots)
Search by Attribute Java – Modification des attributs des documents
Vous pouvez ajouter, supprimer ou remplacer des attributs sur des documents déjà indexés, permettant batch update document attributes sans ré‑indexer l’ensemble de la collection.
Étape par étape
Étape 1 : Ajouter des documents à l’index
index.add("YOUR_DOCUMENT_DIRECTORY");
Étape 2 : Récupérer les informations du document indexé
import com.groupdocs.search.results.DocumentInfo;
DocumentInfo[] documents = index.getIndexedDocuments();
Étape 3 : Mise à jour par lots des attributs du document
import com.groupdocs.search.common.AttributeChangeBatch;
import com.groupdocs.search.SearchOptions;
AttributeChangeBatch batch = new AttributeChangeBatch();
batch.addToAll("public"); // Add 'public' to all documents
batch.remove(documents[0].getFilePath(), "public"); // Remove 'public' from a specific document
batch.add(documents[0].getFilePath(), "main", "key"); // Add 'main' and 'key' attributes
// Apply changes
index.changeAttributes(batch);
Étape 4 : Recherche avec des filtres d’attributs
import com.groupdocs.search.results.SearchResult;
SearchOptions options = new SearchOptions();
options.setSearchDocumentFilter(SearchDocumentFilter.createAttribute("main"));
String query = "length";
SearchResult result = index.search(query, options); // Perform the search
Mise à jour par lots des attributs du document avec AttributeChangeBatch
La classe AttributeChangeBatch est l’outil principal pour batch update document attributes. En regroupant les modifications en un seul lot, vous réduisez la surcharge d’E/S et maintenez l’index cohérent.
Comment ajouter des attributs lors de l’indexation
Search by Attribute Java – Ajout d’attributs lors de l’indexation
Accrochez‑vous à l’événement FileIndexing pour attribuer des attributs personnalisés à chaque fichier ajouté à l’index.
Étape par étape
Étape 1 : S’abonner à l’événement FileIndexing
import com.groupdocs.search.events.EventHandler;
import com.groupdocs.search.events.FileIndexingEventArgs;
index.getEvents().FileIndexing.add(new EventHandler<FileIndexingEventArgs>() {
@Override
public void invoke(Object sender, FileIndexingEventArgs args) {
if (args.getDocumentFullPath().endsWith("Lorem ipsum.pdf")) {
args.setAttributes(new String[] { "main", "key" });
}
}
});
Étape 2 : Indexer les documents
index.add("YOUR_DOCUMENT_DIRECTORY");
Applications pratiques
- Document Management Systems – Automatisez la catégorisation en ajoutant des métadonnées lors de l’ingestion.
- Large Content Archives – Utilisez des filtres d’attributs pour affiner les recherches, réduisant considérablement les temps de réponse.
- Compliance & Reporting – Étiquetez dynamiquement les documents selon les calendriers de conservation ou les pistes d’audit.
Considérations de performance
- Memory Management – Surveillez le tas JVM et ajustez
-Xmxselon les besoins. - Batch Processing – Regroupez les changements d’attributs avec
AttributeChangeBatchpour minimiser les écritures d’index. - Library Updates – Maintenez GroupDocs.Search à jour pour profiter des correctifs de performance.
Problèmes courants et solutions
| Problème | Pourquoi cela se produit | Comment résoudre |
|---|---|---|
| Attributs non appliqués | Gestionnaire d’événement non enregistré avant l’indexation | Assurez‑vous que index.getEvents().FileIndexing.add(...) s’exécute avant index.add(...). |
| Recherche ne renvoie aucun résultat | Incohérence du nom d’attribut (sensible à la casse) | Utilisez les noms d’attribut exacts lors de la création de filtres (createAttribute("main")). |
| Erreurs de mémoire insuffisante sur de gros lots | Trop de modifications dans un seul lot | Divisez les grosses mises à jour en instances plus petites de AttributeChangeBatch. |
| Licence non reconnue | Utilisation du JAR d’essai sans appliquer le fichier de licence | Appelez License license = new License(); license.setLicense("path/to/license.file"); avant toute opération d’indexation. |
Questions fréquentes
Q : Quels sont les prérequis pour utiliser GroupDocs.Search en Java ?
R : Vous avez besoin de Java 8+, de la bibliothèque GroupDocs.Search et de connaissances de base en concepts d’indexation.
Q : Comment installer GroupDocs.Search via Maven ?
R : Ajoutez le dépôt et la dépendance montrés dans la section Configuration Maven à votre pom.xml.
Q : Puis‑je modifier les attributs après l’indexation des documents ?
R : Oui, utilisez AttributeChangeBatch pour mettre à jour en lot les attributs des documents sans ré‑indexation.
Q : Que faire si mon processus d’indexation est lent ?
R : Optimisez les paramètres de mémoire JVM, utilisez les mises à jour par lots, et assurez‑vous d’utiliser la dernière version de la bibliothèque.
Q : Où puis‑je trouver plus de ressources sur GroupDocs.Search pour Java ?
R : Consultez la documentation officielle ou explorez les forums communautaires.
Ressources
- Documentation : GroupDocs.Search for Java Docs
- Référence API : API Reference
- Téléchargement : Latest Releases
- GitHub : GitHub GroupDocs.Search
- Forum d’assistance gratuit : GroupDocs Forums
- Licence temporaire : License Page
Dernière mise à jour : 2026-02-24
Testé avec : GroupDocs.Search 25.4 for Java
Auteur : GroupDocs