Search by Attribute Java with GroupDocs.Search Guide
Möchten Sie Ihr Dokumenten‑Management‑System verbessern, indem Sie Dokumentattribute dynamisch ändern und indexieren – und das mit Java? Dann sind Sie hier genau richtig! Dieses Tutorial geht tief darauf ein, wie Sie die leistungsstarke GroupDocs.Search for Java‑Bibliothek nutzen, um search by attribute java durchzuführen, indexierte Dokumentattribute zu ändern und sie während des Indexierungsprozesses hinzuzufügen. Egal, ob Sie ein durchsuchbares Portal, ein Compliance‑Archiv oder eine intelligente, inhalt‑gesteuerte Anwendung bauen – das Beherrschen dieser Techniken spart Zeit und verbessert die Performance.
Quick Answers
- Was ist “search by attribute java”? Es ist die Möglichkeit, Suchergebnisse anhand benutzerdefinierter Metadaten zu filtern, die jedem Dokument zugeordnet sind.
- Kann ich Attribute nach der Indexierung ändern? Ja – verwenden Sie
AttributeChangeBatch, um Dokumentattribute stapelweise zu aktualisieren. - Wie füge ich Attribute während der Indexierung hinzu? Abonnieren Sie das
FileIndexing‑Ereignis und setzen Sie Attribute programmgesteuert. - Benötige ich eine Lizenz? Eine kostenlose Testversion reicht für die Evaluierung; für den Produktionseinsatz ist eine permanente Lizenz erforderlich.
- Welche Java‑Version wird benötigt? Java 8 oder höher wird empfohlen.
What is “search by attribute java”?
Search by attribute java ermöglicht es Ihnen, Dokumente anhand ihrer Metadaten (Attribute) statt nur ihres Inhalts abzufragen. Indem Sie Schlüssel‑Wert‑Paare wie public, main oder key an jede Datei anhängen, können Sie die Ergebnisse schnell auf die relevanteste Teilmenge eingrenzen.
Why Use Dynamic Metadata Tagging?
- Dynamische Kategorisierung – halten Sie Metadaten synchron zu sich ändernden Geschäftsregeln.
- Schnelleres Filtern – Attributfilter werden vor der Volltextsuche ausgewertet, was die Antwortzeiten erhöht.
- Compliance‑Tracking – versehen Sie Dokumente mit Tags für Aufbewahrungsrichtlinien oder Prüfungsanforderungen.
- Stapelweise Attribute aktualisieren – ändern Sie viele Dokumente in einem Vorgang, ohne alles neu zu indexieren.
Prerequisites
- Java 8+ (JDK 8 oder neuer)
- GroupDocs.Search for Java‑Bibliothek (siehe Maven‑Setup unten)
- Grundlegendes Verständnis von Java und Indexierungskonzepten
Setting Up GroupDocs.Search for Java
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
Alternativ laden Sie die neueste Version von GroupDocs.Search for Java releases herunter.
Falls Sie kein Build‑Tool wie Maven verwenden möchten, können Sie das JAR von der GroupDocs‑Website beziehen.
License Acquisition
- Starten Sie mit einer kostenlosen Testversion, um die Möglichkeiten zu erkunden.
- Für den erweiterten Einsatz erhalten Sie eine temporäre oder vollständige Lizenz über die Lizenzseite.
Basic Initialization
import com.groupdocs.search.Index;
// Initialize an index in a specified directory
Index index = new Index("YOUR_OUTPUT_DIRECTORY/ChangeAttributes");
How to Modify Document Attributes (Batch Update)
Search by Attribute Java – Changing Document Attributes
Sie können Attribute bereits indexierter Dokumente hinzufügen, entfernen oder ersetzen und damit batch update document attributes durchführen, ohne die gesamte Sammlung neu zu indexieren.
Step‑by‑Step
Step 1: Add Documents to Index
index.add("YOUR_DOCUMENT_DIRECTORY");
Step 2: Retrieve Indexed Document Information
import com.groupdocs.search.results.DocumentInfo;
DocumentInfo[] documents = index.getIndexedDocuments();
Step 3: Batch Update Document Attributes
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);
Step 4: Search with Attribute Filters
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
Batch Update Document Attributes with AttributeChangeBatch
Die Klasse AttributeChangeBatch ist das Kernwerkzeug für batch update document attributes. Durch das Gruppieren von Änderungen in einem einzigen Batch reduzieren Sie den I/O‑Overhead und halten den Index konsistent.
How to Add Attributes During Indexing
Search by Attribute Java – Adding Attributes During Indexing
Binden Sie sich in das FileIndexing‑Ereignis ein, um benutzerdefinierte Attribute zuzuweisen, sobald jede Datei dem Index hinzugefügt wird.
Step‑by‑Step
Step 1: Subscribe to the FileIndexing Event
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" });
}
}
});
Step 2: Index Documents
index.add("YOUR_DOCUMENT_DIRECTORY");
Practical Applications
- Document Management Systems – Automatisieren Sie die Kategorisierung, indem Sie Metadaten bereits beim Import hinzufügen.
- Large Content Archives – Nutzen Sie Attributfilter, um Suchvorgänge zu verengen und die Antwortzeiten drastisch zu senken.
- Compliance & Reporting – Taggen Sie Dokumente dynamisch für Aufbewahrungspläne oder Prüfpfade.
Performance Considerations
- Memory Management – Überwachen Sie den JVM‑Heap und passen Sie
-Xmxbei Bedarf an. - Batch Processing – Gruppieren Sie Attributänderungen mit
AttributeChangeBatch, um Indexschreibvorgänge zu minimieren. - Library Updates – Halten Sie GroupDocs.Search auf dem neuesten Stand, um von Performance‑Patches zu profitieren.
Common Issues and Solutions
| Issue | Why It Happens | How to Fix |
|---|---|---|
| Attributes not applied | Event‑Handler nicht vor der Indexierung registriert | Stellen Sie sicher, dass index.getEvents().FileIndexing.add(...) vor index.add(...) ausgeführt wird. |
| Search returns no results | Attributname stimmt nicht überein (Groß‑/Kleinschreibung) | Verwenden Sie exakt die gleichen Attributnamen beim Erstellen von Filtern (createAttribute("main")). |
| Out‑of‑memory errors on large batches | Zu viele Änderungen in einem einzigen Batch | Teilen Sie große Updates in kleinere AttributeChangeBatch‑Instanzen auf. |
| License not recognized | Test‑JAR wird verwendet, ohne Lizenzdatei zu setzen | Rufen Sie License license = new License(); license.setLicense("path/to/license.file"); vor irgendeiner Index‑Operation auf. |
Frequently Asked Questions
Q: What are the prerequisites for using GroupDocs.Search in Java?
A: Sie benötigen Java 8+, die GroupDocs.Search‑Bibliothek und Grundkenntnisse zu Indexierungskonzepten.
Q: How do I install GroupDocs.Search via Maven?
A: Fügen Sie das Repository und die Abhängigkeit aus dem Abschnitt Maven Setup zu Ihrer pom.xml hinzu.
Q: Can I modify attributes after documents are indexed?
A: Ja, verwenden Sie AttributeChangeBatch, um Dokumentattribute stapelweise zu aktualisieren, ohne neu zu indexieren.
Q: What if my indexing process is slow?
A: Optimieren Sie die JVM‑Speichereinstellungen, nutzen Sie Batch‑Updates und stellen Sie sicher, dass Sie die neueste Bibliotheksversion verwenden.
Q: Where can I find more resources on GroupDocs.Search for Java?
A: Besuchen Sie die offizielle Dokumentation oder erkunden Sie die Community‑Foren.
Resources
- Documentation: GroupDocs.Search for Java Docs
- API Reference: API Reference
- Download: Latest Releases
- GitHub: GitHub GroupDocs.Search
- Free Support Forum: GroupDocs Forums
- Temporary License: License Page
Last Updated: 2026-02-24
Tested With: GroupDocs.Search 25.4 for Java
Author: GroupDocs