Cara mengindeks dokumen di Java untuk file yang dilindungi password dengan GroupDocs.Search
Jika Anda bertanya-tanya bagaimana cara mengindeks dokumen yang dilindungi dengan password, Anda berada di tempat yang tepat. Di perusahaan modern, melindungi data sensitif dengan password sangat penting, namun hal ini sering menyulitkan pembuatan indeks yang cepat dan dapat dicari. Tutorial ini memandu Anda langkah demi langkah untuk membangun indeks dokumen yang aman dan berperforma tinggi untuk file yang dilindungi password menggunakan GroupDocs.Search untuk Java, sambil menjaga proses tetap sederhana dan dapat dipelihara.
Jawaban Cepat
- Apa yang dibahas dalam tutorial ini? Mengindeks dokumen yang dilindungi password dengan kamus password dan event listener.
- Pustaka apa yang diperlukan? GroupDocs.Search untuk Java (versi terbaru).
- Apakah saya memerlukan lisensi? Lisensi percobaan gratis sementara tersedia untuk evaluasi.
- Bisakah saya mengindeks tipe file lain? Ya, GroupDocs.Search mendukung banyak format seperti PDF, DOCX, XLSX, dll.
- Versi Java apa yang dibutuhkan? JDK 8 atau lebih baru.
Apa itu “create document index java”?
Membuat indeks dokumen di Java berarti membangun struktur data yang dapat dicari yang memetakan istilah ke file tempat istilah tersebut muncul. Dengan GroupDocs.Search, proses ini dapat secara otomatis menangani dokumen terenkripsi, sehingga Anda tidak perlu membuka kunci setiap file secara manual.
Mengapa menggunakan GroupDocs.Search untuk file yang dilindungi password?
- Pembukaan kunci tanpa sentuhan – berikan password sekali melalui kamus atau event handler.
- Performa tinggi – mesin indeks yang dioptimalkan yang dapat menangani jutaan dokumen.
- Bahasa kueri kaya – mendukung operator Boolean, wildcard, dan pencarian fuzzy.
- Dukungan lintas format – bekerja dengan lebih dari 100 tipe file secara langsung.
- Menyederhanakan cara mengindeks dokumen – API menyembunyikan kompleksitas penanganan file terenkripsi.
Prasyarat
- Java Development Kit (JDK) 8+ – terpasang dan dikonfigurasi di PATH Anda.
- IDE – IntelliJ IDEA, Eclipse, atau editor yang kompatibel dengan Java.
- Maven – untuk manajemen dependensi.
- GroupDocs.Search untuk Java – tambahkan pustaka melalui Maven (lihat di bawah).
Menyiapkan GroupDocs.Search untuk Java
Menggunakan Maven
Tambahkan repositori dan dependensi ke file pom.xml Anda:
<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, Anda dapat mengunduh versi terbaru langsung dari GroupDocs.Search for Java releases.
Untuk memulai dengan lisensi percobaan, kunjungi halaman lisensi sementara GroupDocs dan ikuti petunjuk untuk mendapatkan percobaan gratis Anda.
Cara mengindeks dokumen dengan kamus password
Berikut dua pendekatan praktis. Keduanya memungkinkan Anda create document index java sambil menangani password secara otomatis.
Pendekatan 1 – Mengindeks Menggunakan Kamus Password
Gambaran Umum
Simpan password dokumen dalam kamus sehingga mesin dapat membuka file secara langsung.
Langkah 1: Tentukan Indeks dan Folder Dokumen
String indexFolder = "YOUR_OUTPUT_DIRECTORY/IndexUsingPasswordDictionary";
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY"; // Path to password‑protected documents
Langkah 2: Buat Indeks
// Initialize the Index object in the specified directory
Index index = new Index(indexFolder);
Langkah 3: Tambahkan Password Dokumen
// Add passwords for specific files using their absolute paths
String path1 = new File(documentsFolder + "/English.docx").getAbsolutePath();
index.getDictionaries().getDocumentPasswords().add(path1, "123456");
String path2 = new File(documentsFolder + "/Lorem ipsum.docx").getAbsolutePath();
index.getDictionaries().getDocumentPasswords().add(path2, "123456");
Langkah 4: Indeks Dokumen
// Automatically retrieve passwords from the dictionary during indexing
index.add(documentsFolder);
Langkah 5: Cari di Indeks
String query = "ipsum OR increasing";
SearchResult result = index.search(query);
// Handle search results (e.g., display or process them)
Tip: Jika Anda memiliki banyak file, pertimbangkan memuat password dari penyimpanan aman (database, Azure Key Vault, dll.) alih-alih menuliskannya secara hard‑code.
Pemecahan Masalah
- Pastikan setiap password cocok dengan password perlindungan sebenarnya pada file.
- Periksa kembali jalur file; jalur yang salah memicu
FileNotFoundException.
Pendekatan 2 – Mengindeks Menggunakan Event Listener untuk Permintaan Password
Gambaran Umum
Berikan password secara dinamis ketika mesin memicu event password‑required.
Langkah 1: Tentukan Indeks dan Folder Dokumen
String indexFolder = "YOUR_OUTPUT_DIRECTORY/IndexUsingPasswordEvent";
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY"; // Path to password‑protected documents
Langkah 2: Buat Indeks
// Initialize the Index object in the specified directory
Index index = new Index(indexFolder);
Langkah 3: Langganan ke Event Password‑Required
index.getEvents().PasswordRequired.add(new EventHandler<PasswordRequiredEventArgs>() {
@Override
public void invoke(Object sender, PasswordRequiredEventArgs args) {
// Provide password for DOCX files when needed
if (args.getDocumentFullPath().endsWith(".docx")) {
args.setPassword("123456");
}
}
});
Langkah 4: Indeks Dokumen
// The event handler will supply passwords as required during indexing
index.add(documentsFolder);
Langkah 5: Cari di Indeks
String query = "ipsum OR increasing";
SearchResult result = index.search(query);
// Handle search results (e.g., display or process them)
Pemecahan Masalah
- Pastikan event handler mencakup semua ekstensi file yang perlu Anda indeks.
- Uji dengan beberapa file contoh terlebih dahulu untuk memastikan password diterapkan.
Aplikasi Praktis
- Manajemen Dokumen Perusahaan: Mengotomatiskan pengindeksan kontrak rahasia, file HR, dan laporan keuangan.
- Arsip Hukum: Dengan cepat mengambil file kasus sambil tetap mengenkripsi saat disimpan.
- Rekam Medis: Mengindeks PDF dan dokumen Word pasien tanpa mengungkapkan PHI.
Pertimbangan Kinerja
- Alokasi Memori: Alokasikan memori heap yang cukup (
-Xmx2gatau lebih tinggi) untuk batch besar. - Pengindeksan Paralel: Gunakan
index.addAsync(...)atau jalankan beberapa thread pengindeksan untuk throughput lebih cepat. - Pemeliharaan Indeks: Secara periodik panggil
index.optimize()untuk memadatkan indeks dan meningkatkan kecepatan kueri.
Masalah Umum dan Solusinya
- Password Salah: Dokumen dilewati dan peringatan dicatat. Periksa kembali kamus password atau event handler Anda.
- Format Tidak Didukung: Instal plugin format yang diperlukan atau konversi file ke tipe yang didukung sebelum mengindeks.
- File Besar: Tingkatkan ukuran heap dan pertimbangkan mengindeksnya dalam batch yang lebih kecil.
Pertanyaan yang Sering Diajukan
Q: Bagaimana saya menangani format file yang berbeda?
A: GroupDocs.Search mendukung PDF, DOCX, XLSX, PPTX, dan banyak lagi. Instal plugin format yang sesuai jika diperlukan.
Q: Apa yang terjadi jika password salah?
A: Dokumen dilewati, dan peringatan dicatat. Verifikasi sumber password Anda.
Q: Bisakah saya mengindeks file yang disimpan di cloud?
A: Ya, tetapi mereka harus diunduh ke folder sementara lokal terlebih dahulu, karena mesin bekerja dengan jalur sistem file.
Q: Bagaimana saya dapat meningkatkan relevansi pencarian?
A: Sesuaikan pengaturan skor melalui IndexOptions, gunakan sinonim, dan manfaatkan sintaks kueri lanjutan (field:term~ untuk pencocokan fuzzy).
Q: Apa yang harus saya lakukan jika pengindeksan gagal untuk beberapa file?
A: Tinjau output log; penyebab umum adalah password yang hilang, file rusak, atau format yang tidak didukung.
Sumber Daya
- GroupDocs.Search Documentation
- API Reference
- Download GroupDocs.Search
- GitHub Repository
- Free Support Forum
- Temporary License Information
Dengan mengikuti panduan ini, Anda kini mengetahui bagaimana cara mengindeks dokumen untuk file yang dilindungi password, meningkatkan keamanan dan kemampuan penemuan dalam aplikasi Anda.
Terakhir Diperbarui: 2026-03-15
Diuji Dengan: GroupDocs.Search 25.4 for Java
Penulis: GroupDocs