Jak indeksować dokumenty w Javie dla plików chronionych hasłem przy użyciu GroupDocs.Search
Jeśli zastanawiasz się jak indeksować dokumenty, które są chronione hasłami, trafiłeś we właściwe miejsce. W nowoczesnych przedsiębiorstwach zabezpieczanie wrażliwych danych hasłami jest niezbędne, ale często utrudnia stworzenie szybkiego, przeszukiwalnego indeksu. Ten samouczek przeprowadzi Cię krok po kroku przez budowanie bezpiecznego, wysokowydajnego indeksu dokumentów dla plików chronionych hasłem przy użyciu GroupDocs.Search dla Javy, zachowując proces prostym i łatwym w utrzymaniu.
Szybkie odpowiedzi
- Co obejmuje ten samouczek? Indeksowanie dokumentów chronionych hasłem przy użyciu słownika haseł i nasłuchiwacza zdarzeń.
- Jakiej biblioteki wymaga? GroupDocs.Search for Java (najnowsza wersja).
- Czy potrzebna jest licencja? Dostępna jest tymczasowa darmowa licencja próbna do oceny.
- Czy mogę indeksować inne typy plików? Tak, GroupDocs.Search obsługuje wiele formatów, takich jak PDF, DOCX, XLSX itp.
- Jakiej wersji Javy potrzebuję? JDK 8 lub nowsza.
Co to jest „create document index java”?
Tworzenie indeksu dokumentów w Javie oznacza budowanie przeszukiwalnej struktury danych, która mapuje terminy na pliki, w których się pojawiają. Dzięki GroupDocs.Search ten proces może automatycznie obsługiwać zaszyfrowane dokumenty, więc nie musisz ręcznie odblokowywać każdego pliku.
Dlaczego używać GroupDocs.Search dla plików chronionych hasłem?
- Odblokowywanie bez interwencji – podaj hasła raz za pomocą słownika lub obsługi zdarzenia.
- Wysoka wydajność – zoptymalizowany silnik indeksowania, który skaluje się do milionów dokumentów.
- Bogaty język zapytań – obsługa operatorów logicznych, znaków wieloznacznych i wyszukiwania przybliżonego.
- Obsługa wielu formatów – działa z ponad 100 typami plików od razu.
- Upraszcza proces indeksowania dokumentów – API ukrywa złożoność obsługi zaszyfrowanych plików.
Wymagania wstępne
- Java Development Kit (JDK) 8+ – zainstalowany i skonfigurowany w zmiennej PATH.
- IDE – IntelliJ IDEA, Eclipse lub dowolny edytor kompatybilny z Javą.
- Maven – do zarządzania zależnościami.
- GroupDocs.Search for Java – dodaj bibliotekę za pomocą Maven (zobacz poniżej).
Konfiguracja GroupDocs.Search dla Java
Korzystanie z Maven
Dodaj repozytorium i zależność do pliku pom.xml:
<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>
Bezpośrednie pobranie
Alternatywnie możesz pobrać najnowszą wersję bezpośrednio z GroupDocs.Search for Java releases.
Aby rozpocząć z licencją próbną, odwiedź stronę tymczasowej licencji GroupDocs i postępuj zgodnie z instrukcjami, aby uzyskać darmową wersję próbną.
Jak indeksować dokumenty przy użyciu słownika haseł
Poniżej znajdują się dwa praktyczne podejścia. Oba pozwalają create document index java przy jednoczesnym automatycznym obsługiwaniu haseł.
Podejście 1 – Indeksowanie przy użyciu słownika haseł
Przegląd
Przechowuj hasła do dokumentów w słowniku, aby silnik mógł odblokowywać pliki w locie.
Krok 1: Zdefiniuj indeks i folder dokumentów
String indexFolder = "YOUR_OUTPUT_DIRECTORY/IndexUsingPasswordDictionary";
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY"; // Path to password‑protected documents
Krok 2: Utwórz indeks
// Initialize the Index object in the specified directory
Index index = new Index(indexFolder);
Krok 3: Dodaj hasła do dokumentów
// 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");
Krok 4: Indeksuj dokumenty
// Automatically retrieve passwords from the dictionary during indexing
index.add(documentsFolder);
Krok 5: Wyszukaj w indeksie
String query = "ipsum OR increasing";
SearchResult result = index.search(query);
// Handle search results (e.g., display or process them)
Wskazówka: Jeśli masz wiele plików, rozważ ładowanie haseł ze zabezpieczonego magazynu (baza danych, Azure Key Vault itp.) zamiast ich twardego kodowania.
Rozwiązywanie problemów
- Zweryfikuj, że każde hasło odpowiada rzeczywistemu hasłu ochrony pliku.
- Sprawdź ponownie ścieżki plików; nieprawidłowa ścieżka wywołuje
FileNotFoundException.
Podejście 2 – Indeksowanie przy użyciu nasłuchiwacza zdarzeń wymagających hasła
Przegląd
Dostarczaj hasła dynamicznie, gdy silnik wywoła zdarzenie wymagające hasła.
Krok 1: Zdefiniuj indeks i folder dokumentów
String indexFolder = "YOUR_OUTPUT_DIRECTORY/IndexUsingPasswordEvent";
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY"; // Path to password‑protected documents
Krok 2: Utwórz indeks
// Initialize the Index object in the specified directory
Index index = new Index(indexFolder);
Krok 3: Subskrybuj zdarzenie wymaganego hasła
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");
}
}
});
Krok 4: Indeksuj dokumenty
// The event handler will supply passwords as required during indexing
index.add(documentsFolder);
Krok 5: Wyszukaj w indeksie
String query = "ipsum OR increasing";
SearchResult result = index.search(query);
// Handle search results (e.g., display or process them)
Rozwiązywanie problemów
- Upewnij się, że obsługa zdarzenia obejmuje wszystkie rozszerzenia plików, które musisz indeksować.
- Najpierw przetestuj kilka przykładowych plików, aby potwierdzić, że hasło jest stosowane.
Praktyczne zastosowania
- Enterprise Document Management: Automatyzuj indeksowanie poufnych umów, plików HR i raportów finansowych.
- Legal Archives: Szybko odnajduj akta spraw, jednocześnie utrzymując je zaszyfrowane w spoczynku.
- Healthcare Records: Indeksuj PDF-y i dokumenty Word pacjentów bez ujawniania PHI.
Rozważania dotyczące wydajności
- Alokacja pamięci: Przydziel wystarczającą pamięć sterty (
-Xmx2glub wyższą) dla dużych partii. - Równoległe indeksowanie: Użyj
index.addAsync(...)lub uruchom wiele wątków indeksujących dla szybszego przepustowości. - Utrzymanie indeksu: Okresowo wywołuj
index.optimize(), aby skompaktować indeks i poprawić szybkość zapytań.
Typowe problemy i rozwiązania
- Nieprawidłowe hasło: Dokument jest pomijany, a ostrzeżenie jest zapisywane w logu. Sprawdź ponownie swój słownik haseł lub obsługę zdarzenia.
- Nieobsługiwany format: Zainstaluj niezbędne wtyczki formatów lub przekonwertuj pliki na obsługiwany typ przed indeksowaniem.
- Duże pliki: Zwiększ rozmiar sterty i rozważ indeksowanie ich w mniejszych partiach.
Najczęściej zadawane pytania
Q: Jak obsługiwać różne formaty plików?
A: GroupDocs.Search obsługuje PDF, DOCX, XLSX, PPTX i wiele innych. Zainstaluj odpowiednie wtyczki formatów, jeśli są wymagane.
Q: Co się stanie, jeśli hasło jest nieprawidłowe?
A: Dokument jest pomijany, a ostrzeżenie jest zapisywane w logu. Zweryfikuj źródło haseł.
Q: Czy mogę indeksować pliki przechowywane w chmurze?
A: Tak, ale najpierw muszą być pobrane do lokalnego tymczasowego folderu, ponieważ silnik działa na ścieżkach systemu plików.
Q: Jak mogę poprawić trafność wyszukiwania?
A: Dostosuj ustawienia punktacji za pomocą IndexOptions, używaj synonimów i wykorzystaj zaawansowaną składnię zapytań (field:term~ dla dopasowania przybliżonego).
Q: Co zrobić, jeśli indeksowanie nie powodzi się dla niektórych plików?
A: Przejrzyj wyjście logu; typowe przyczyny to brakujące hasła, uszkodzone pliki lub nieobsługiwane formaty.
Zasoby
- Dokumentacja GroupDocs.Search
- Referencja API
- Pobierz GroupDocs.Search
- Repozytorium GitHub
- Darmowe forum wsparcia
- Informacje o licencji tymczasowej
Postępując zgodnie z tym przewodnikiem, teraz wiesz jak indeksować dokumenty dla plików chronionych hasłem, zwiększając zarówno bezpieczeństwo, jak i możliwość ich odnalezienia w Twoich aplikacjach.
Ostatnia aktualizacja: 2026-03-15
Testowano z: GroupDocs.Search 25.4 for Java
Autor: GroupDocs