Panduan Pencarian Berdasarkan Atribut Java dengan GroupDocs.Search
Apakah Anda ingin meningkatkan sistem manajemen dokumen Anda dengan memodifikasi dan mengindeks atribut dokumen secara dinamis menggunakan Java? Anda berada di tempat yang tepat! Tutorial ini menyelami penggunaan pustaka GroupDocs.Search for Java yang kuat untuk search by attribute java, mengubah atribut dokumen yang diindeks, dan menambahkannya selama proses pengindeksan. Baik Anda membangun portal yang dapat dicari, arsip kepatuhan, atau aplikasi berbasis konten cerdas, menguasai teknik ini akan menghemat waktu dan meningkatkan kinerja.
Jawaban Cepat
- Apa itu “search by attribute java”? Ini adalah kemampuan untuk memfilter hasil pencarian menggunakan metadata khusus yang terlampir pada setiap dokumen.
- Bisakah saya memodifikasi atribut setelah pengindeksan? Ya—gunakan
AttributeChangeBatchuntuk memperbarui atribut dokumen secara batch. - Bagaimana cara menambahkan atribut saat pengindeksan? Langganan ke event
FileIndexingdan atur atribut secara programatis. - Apakah saya memerlukan lisensi? Versi percobaan gratis dapat digunakan untuk evaluasi; lisensi permanen diperlukan untuk produksi.
- Versi Java apa yang dibutuhkan? Java 8 atau lebih baru disarankan.
Apa itu “search by attribute java”?
Search by attribute java memungkinkan Anda menanyakan dokumen berdasarkan metadata (atribut) mereka, bukan hanya kontennya. Dengan melampirkan pasangan kunci‑nilai seperti public, main, atau key ke setiap file, Anda dapat dengan cepat mempersempit hasil ke subset yang paling relevan.
Mengapa Menggunakan Penandaan Metadata Dinamis?
- Kategorisasi dinamis – menjaga metadata tetap sinkron dengan aturan bisnis yang berkembang.
- Pemfilteran lebih cepat – filter atribut dievaluasi sebelum pencarian full‑text, meningkatkan waktu respons.
- Pelacakan kepatuhan – menandai dokumen untuk kebijakan retensi atau persyaratan audit.
- Pembaruan batch atribut – mengubah banyak dokumen dalam satu operasi tanpa harus mengindeks ulang semuanya.
Prasyarat
- Java 8+ (JDK 8 atau lebih baru)
- GroupDocs.Search for Java library (lihat pengaturan Maven di bawah)
- Pemahaman dasar tentang Java dan konsep pengindeksan
Menyiapkan GroupDocs.Search untuk Java
Pengaturan 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>
Unduhan Langsung
Sebagai alternatif, unduh versi terbaru dari GroupDocs.Search for Java releases.
Jika Anda tidak ingin menggunakan alat build seperti Maven, unduh JAR dari situs GroupDocs.
Akuisisi Lisensi
- Mulailah dengan percobaan gratis untuk menjelajahi kemampuan.
- Untuk penggunaan jangka panjang, dapatkan lisensi sementara atau penuh melalui halaman lisensi.
Inisialisasi Dasar
import com.groupdocs.search.Index;
// Initialize an index in a specified directory
Index index = new Index("YOUR_OUTPUT_DIRECTORY/ChangeAttributes");
Cara Memodifikasi Atribut Dokumen (Pembaruan Batch)
Search by Attribute Java – Mengubah Atribut Dokumen
Anda dapat menambah, menghapus, atau mengganti atribut pada dokumen yang sudah diindeks, memungkinkan batch update document attributes tanpa mengindeks ulang seluruh koleksi.
Langkah‑per‑Langkah
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
Pembaruan Batch Atribut Dokumen dengan AttributeChangeBatch
Kelas AttributeChangeBatch adalah alat utama untuk batch update document attributes. Dengan mengelompokkan perubahan ke dalam satu batch, Anda mengurangi beban I/O dan menjaga indeks tetap konsisten.
Cara Menambahkan Atribut Selama Pengindeksan
Search by Attribute Java – Menambahkan Atribut Selama Pengindeksan
Hubungkan ke event FileIndexing untuk menetapkan atribut khusus saat setiap file ditambahkan ke indeks.
Langkah‑per‑Langkah
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");
Aplikasi Praktis
- Document Management Systems – Mengotomatisasi kategorisasi dengan menambahkan metadata selama ingest.
- Large Content Archives – Menggunakan filter atribut untuk mempersempit pencarian, secara dramatis memotong waktu respons.
- Compliance & Reporting – Menandai dokumen secara dinamis untuk jadwal retensi atau jejak audit.
Pertimbangan Kinerja
- Manajemen Memori – Pantau heap JVM dan sesuaikan
-Xmxsesuai kebutuhan. - Pemrosesan Batch – Kelompokkan perubahan atribut dengan
AttributeChangeBatchuntuk meminimalkan penulisan indeks. - Pembaruan Library – Jaga agar GroupDocs.Search tetap terbaru untuk mendapatkan perbaikan kinerja.
Masalah Umum dan Solusinya
| Issue | Why It Happens | How to Fix |
|---|---|---|
| Attributes not applied | Event handler not registered before indexing | Ensure index.getEvents().FileIndexing.add(...) runs before index.add(...). |
| Search returns no results | Attribute name mismatch (case‑sensitive) | Use exact attribute names when creating filters (createAttribute("main")). |
| Out‑of‑memory errors on large batches | Too many changes in a single batch | Split large updates into smaller AttributeChangeBatch instances. |
| License not recognized | Using trial JAR without applying license file | Call License license = new License(); license.setLicense("path/to/license.file"); before any index operation. |
Pertanyaan yang Sering Diajukan
Q: Apa saja prasyarat untuk menggunakan GroupDocs.Search di Java?
A: Anda memerlukan Java 8+, pustaka GroupDocs.Search, dan pengetahuan dasar tentang konsep pengindeksan.
Q: Bagaimana cara menginstal GroupDocs.Search via Maven?
A: Tambahkan repositori dan dependensi yang ditunjukkan pada bagian Pengaturan Maven ke pom.xml Anda.
Q: Bisakah saya memodifikasi atribut setelah dokumen diindeks?
A: Ya, gunakan AttributeChangeBatch untuk memperbarui atribut dokumen secara batch tanpa mengindeks ulang.
Q: Bagaimana jika proses pengindeksan saya lambat?
A: Optimalkan pengaturan memori JVM, gunakan pembaruan batch, dan pastikan Anda menggunakan versi library terbaru.
Q: Di mana saya dapat menemukan lebih banyak sumber daya tentang GroupDocs.Search untuk Java?
A: Kunjungi official documentation atau jelajahi forum komunitas.
Sumber Daya
- Dokumentasi: GroupDocs.Search for Java Docs
- Referensi API: API Reference
- Unduhan: Latest Releases
- GitHub: GitHub GroupDocs.Search
- Forum Dukungan Gratis: GroupDocs Forums
- Lisensi Sementara: License Page
Last Updated: 2026-02-24
Tested With: GroupDocs.Search 25.4 for Java
Author: GroupDocs