Utwórz indeks dokumentów java dla plików chronionych hasłem z GroupDocs.Search

W nowoczesnych przedsiębiorstwach ochrona wrażliwych danych hasłami jest niezbędna, ale często utrudnia utworzenie indeksu dokumentów java w celu szybkiego wyszukiwania. Ten samouczek pokazuje dokładnie, jak zbudować przeszukiwalny indeks plików chronionych hasłem przy użyciu GroupDocs.Search dla Javy, zachowując jednocześnie bezpieczeństwo i wydajność przepływu pracy.

Szybkie odpowiedzi

  • Co obejmuje ten samouczek? Indeksowanie dokumentów chronionych hasłem przy użyciu słownika haseł i nasłuchiwacza zdarzeń.
  • Jakiej biblioteki potrzebuję? GroupDocs.Search dla Javy (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”?

Utworzenie indeksu dokumentów w Javie oznacza zbudowanie struktury danych, którą można przeszukiwać, mapującej terminy na pliki, w których się pojawiają. Dzięki GroupDocs.Search proces ten może automatycznie obsługiwać zaszyfrowane dokumenty, więc nie musisz ręcznie odblokowywać każdego pliku.

Dlaczego warto używać GroupDocs.Search dla plików chronionych hasłem?

  • Zero‑dotykowe odblokowywanie – podaj hasła raz w słowniku lub obsłudze zdarzeń.
  • Wysoka wydajność – zoptymalizowany silnik indeksujący, skalujący się do milionów dokumentów.
  • Bogaty język zapytań – obsługa operatorów Boolean, znaków wieloznacznych i wyszukiwania przybliżonego.
  • Obsługa wielu formatów – działa od razu z ponad 100 typami plików.

Wymagania wstępne

  1. Java Development Kit (JDK) 8+ – zainstalowany i skonfigurowany w zmiennej PATH.
  2. IDE – IntelliJ IDEA, Eclipse lub dowolny edytor kompatybilny z Javą.
  3. Maven – do zarządzania zależnościami.
  4. GroupDocs.Search dla Javy – dodaj bibliotekę przez Maven (patrz niżej).

Konfiguracja GroupDocs.Search dla Javy

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 utworzyć indeks dokumentów java przy użyciu GroupDocs.Search

Poniżej przedstawiono dwa praktyczne podejścia. Oba umożliwiają utworzenie indeksu dokumentów java przy jednoczesnym automatycznym obsługiwaniu haseł.

Podejście 1 – Indeksowanie przy użyciu słownika haseł

Przegląd

Przechowuj hasła dokumentów w słowniku, aby silnik mógł odblokowywać pliki w locie.

Krok 1: Zdefiniuj folder indeksu 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 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: Przeszukaj indeks

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ł z bezpiecznego magazynu (baza danych, Azure Key Vault itp.) zamiast ich twardego kodowania.

Rozwiązywanie problemów

  • Sprawdź, czy każde hasło odpowiada rzeczywistemu hasłu ochronnemu pliku.
  • Zweryfikuj ścieżki plików; nieprawidłowa ścieżka powoduje FileNotFoundException.

Podejście 2 – Indeksowanie przy użyciu nasłuchiwacza zdarzenia wymagającego hasła

Przegląd

Dostarczaj hasła dynamicznie, gdy silnik wywoła zdarzenie wymagające hasła.

Krok 1: Zdefiniuj folder indeksu 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 wymagające 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: Przeszukaj indeks

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 chcesz indeksować.
  • Najpierw przetestuj kilka przykładowych plików, aby potwierdzić, że hasło jest prawidłowo stosowane.

Praktyczne zastosowania

  1. Zarządzanie dokumentami w przedsiębiorstwie: Automatyzacja indeksowania poufnych umów, dokumentów HR i raportów finansowych.
  2. Archiwa prawne: Szybkie wyszukiwanie akt spraw przy jednoczesnym ich szyfrowaniu w spoczynku.
  3. Rekordy medyczne: Indeksowanie plików PDF i dokumentów Word pacjentów bez ujawniania danych PHI.

Wskazówki dotyczące wydajności

  • Alokacja pamięci: Przydziel wystarczającą pamięć sterty (-Xmx2g lub więcej) dla dużych partii.
  • Indeksowanie równoległe: Użyj index.addAsync(...) lub uruchom wiele wątków indeksujących, aby przyspieszyć przetwarzanie.
  • Utrzymanie indeksu: Okresowo wywołuj index.optimize(), aby skompaktować indeks i zwiększyć szybkość zapytań.

Najczęściej zadawane pytania

P: Jak obsługiwać różne formaty plików?
O: GroupDocs.Search obsługuje PDF, DOCX, XLSX, PPTX i wiele innych. W razie potrzeby zainstaluj odpowiednie wtyczki formatów.

P: Co się stanie, gdy hasło będzie nieprawidłowe?
O: Dokument zostanie pominięty, a ostrzeżenie zostanie zapisane w logu. Sprawdź ponownie słownik haseł lub logikę obsługi zdarzeń.

P: Czy mogę indeksować pliki przechowywane w chmurze?
O: Tak, ale najpierw muszą być pobrane do lokalnego folderu tymczasowego, ponieważ silnik pracuje ze ścieżkami systemu plików.

P: Jak mogę poprawić trafność wyszukiwania?
O: Dostosuj ustawienia punktacji za pomocą IndexOptions, użyj synonimów i wykorzystaj zaawansowaną składnię zapytań (field:term~ dla wyszukiwania przybliżonego).

P: Co zrobić, gdy indeksowanie nie powiedzie się dla niektórych plików?
O: Przejrzyj wyjście logu; najczęstsze przyczyny to brakujące hasła, uszkodzone pliki lub nieobsługiwane formaty.

Zasoby

Postępując zgodnie z tym przewodnikiem, wiesz już, jak utworzyć indeks dokumentów java dla plików chronionych hasłem, zwiększając zarówno bezpieczeństwo, jak i dostępność w swoich aplikacjach.


Ostatnia aktualizacja: 2026-01-06
Testowane z: GroupDocs.Search 25.4 for Java
Autor: GroupDocs