Utwórz indeks dokumentów przy użyciu GroupDocs.Search dla Javy: Kompletny przewodnik

W dzisiejszej erze cyfrowej możliwość tworzenia indeksu dokumentów szybko i efektywnego przeszukiwania go to przełom dla każdej organizacji. Niezależnie od tego, czy budujesz system zarządzania dokumentami, czy własną wyszukiwarkę, GroupDocs.Search dla Javy dostarcza narzędzia do wyodrębniania tekstu, serializacji danych i wykonywania operacji pełnotekstowego wyszukiwania w Javie z łatwością. Ten samouczek przeprowadzi Cię przez każdy krok — od wyodrębniania tekstu z PDF po dodawanie danych do indeksu i wyszukiwanie zaindeksowanych dokumentów.

Szybkie odpowiedzi

  • Jaki jest główny cel? To create a searchable document index using GroupDocs.Search for Java.
  • Jaka wersja biblioteki? GroupDocs.Search 25.4 (lub najnowsze wydanie).
  • Czy potrzebna jest licencja? Darmowa wersja próbna działa w fazie rozwoju; pełna licencja jest wymagana w produkcji.
  • Czy mogę indeksować pliki PDF? Tak — wyodrębnić tekst PDF i dodać go do indeksu.
  • Jak wykonać wyszukiwanie? Użyj metody index.search(query) po dodaniu danych.

Co to jest indeks dokumentów?

Indeks dokumentów to ustrukturyzowana kolekcja wyszukiwalnych terminów wyodrębnionych z Twoich plików. Tworząc indeks dokumentów, umożliwiasz szybkie wyszukiwania pełnotekstowe w dużych repozytoriach, co znacząco poprawia szybkość i dokładność odzyskiwania.

Dlaczego warto używać GroupDocs.Search dla Javy?

  • Robust extraction – Obsługuje PDF, Word, Excel i inne.
  • Easy serialization – Przechowuj wyodrębnione dane jako tablice bajtów do późniejszego użycia.
  • Scalable indexing – Efektywnie indeksuj miliony dokumentów.
  • Powerful query language – Obsługuje złożone zapytania pełnotekstowe w Javie.

Wymagania wstępne

  • GroupDocs.Search for Java (Version 25.4 or newer).
  • Java Development Kit (JDK) compatible with your GroupDocs version.
  • Środowisko IDE, takie jak IntelliJ IDEA lub Eclipse.
  • Maven do zarządzania zależnościami.

Konfiguracja GroupDocs.Search dla Javy

Najpierw dodaj bibliotekę do swojego projektu.

Ustawienia Maven
Umieść następujący kod w 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, pobierz najnowszą wersję z GroupDocs.Search for Java releases.

Uzyskanie licencji

  • Free Trial – Przetestuj wszystkie funkcje przy użyciu tymczasowej licencji.
  • Purchase – Uzyskaj pełny dostęp i priorytetowe wsparcie.

Implementacja krok po kroku

Jak wyodrębnić tekst z plików PDF (i innych dokumentów)

Wyodrębnianie surowego lub sformatowanego tekstu jest pierwszym krokiem w kierunku tworzenia indeksu dokumentów.

String documentPath = "YOUR_DOCUMENT_DIRECTORY/Lorem ipsum.pdf";
Extractor extractor = new Extractor();
Document document = Document.createFromFile(documentPath);
ExtractionOptions extractionOptions = new ExtractionOptions();
extractionOptions.setUseRawTextExtraction(false); // Extract with formatting
ExtractedData extractedData = extractor.extract(document, extractionOptions);

Wskazówka: Ustaw setUseRawTextExtraction(true), jeśli potrzebujesz czystego tekstu bez formatowania.

Jak serializować wyodrębnione dane

Serializacja pozwala przechowywać wyodrębnione dane do późniejszego indeksowania.

ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
extractedData.serialize(outputStream);
byte[] serializedArray = outputStream.toByteArray();

Jak deserializować wyodrębnione dane

Gdy jesteś gotowy do budowy indeksu, przekształć tablicę bajtów z powrotem w obiekt.

ByteArrayInputStream inputStream = new ByteArrayInputStream(serializedArray);
ExtractedData deserializedData = ExtractedData.deserialize(inputStream);

Jak utworzyć indeks dokumentów

Teraz, gdy masz deserializedData, możesz utworzyć indeks, który będzie przechowywał wyszukiwalne terminy.

String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/SeparateDataExtraction";
com.groupdocs.search.Index index = new com.groupdocs.search.Index(indexFolder);

Jak dodać dane do indeksu i wykonać wyszukiwanie

Dodanie danych i zapytanie indeksu kończy przepływ pracy create document index.

ExtractedData[] dataToIndex = new ExtractedData[] { deserializedData };
index.add(dataToIndex, new IndexingOptions());
String query = "ipsum";
SearchResult result = index.search(query);

Pro tip: Użyj index.search("your query", SearchOptions), aby precyzyjnie dostroić ranking trafności.

Typowe przypadki użycia

  1. Document Management Systems – Szybko znajdź umowy, faktury lub polityki.
  2. Content‑Based Search Engines – Zasil wewnętrzne bazy wiedzy za pomocą możliwości pełnotekstowego wyszukiwania w Javie.
  3. Data Archiving Solutions – Indeksuj historyczne rekordy dla natychmiastowego odczytu.

Rozważania dotyczące wydajności

  • Memory Management: Dostosuj rozmiar sterty JVM dla dużych partii dokumentów.
  • Indexing Options: Wyłącz niepotrzebne funkcje (np. wektory terminów), aby przyspieszyć indeksowanie.
  • Regular Updates: Utrzymuj GroupDocs.Search w najnowszej wersji, aby korzystać z poprawek wydajności.

Najczęściej zadawane pytania

Q: Jak efektywnie obsługiwać bardzo duże pliki PDF?
A: Strumieniuj plik przy użyciu Extractor i przetwarzaj go w fragmentach; zwiększ także rozmiar sterty JVM w razie potrzeby.

Q: Czy mogę dostosować składnię zapytań wyszukiwania?
A: Tak — GroupDocs.Search obsługuje operatory logiczne, symbole wieloznaczne i wyszukiwania przybliżeniowe.

Q: Co zrobić, gdy serializacja nie powiedzie się?
A: Upewnij się, że wszystkie obiekty implementują Serializable i obsłuż IOException, aby zalogować szczegóły.

Q: Czy można indeksować tylko określone sekcje dokumentu?
A: Oczywiście — skonfiguruj ExtractionOptions, aby filtrować strony lub sekcje przed indeksowaniem.

Q: Jak zaktualizować do nowszej wersji GroupDocs.Search?
A: Zaktualizuj numer wersji w pliku pom.xml i uruchom mvn clean install; przejrzyj przewodnik migracji pod kątem zmian łamiących.

Zasoby


Ostatnia aktualizacja: 2025-12-18
Testowano z: GroupDocs.Search 25.4 for Java
Autor: GroupDocs