Implementacja GroupDocs.Search Java do wyszukiwania dokumentów

W dzisiejszym środowisku napędzanym danymi, implement groupdocs search java jest niezbędny dla każdej aplikacji, która potrzebuje szybkiego, niezawodnego wyszukiwania pełnotekstowego w plikach PDF, Word, arkuszach kalkulacyjnych i nie tylko. Niezależnie od tego, czy budujesz repozytorium umów prawnych, portal badań akademickich, czy bazę wiedzy wsparcia klienta, ten samouczek przeprowadzi Cię przez instalację SDK, tworzenie indeksu, uruchamianie zapytań rozmytych oraz generowanie HTML z podświetlonymi wynikami wyszukiwania — wszystko w Javie.

Szybkie odpowiedzi

  • Jaka biblioteka pomaga implement groupdocs search java? GroupDocs.Search for Java.
  • Czy mogę podświetlać terminy wyszukiwania java w wynikach? Tak — generowany HTML może automatycznie otaczać dopasowania tagami <mark>.
  • Czy potrzebuję licencji do produkcji? Dostępna jest darmowa wersja próbna; pełna licencja jest wymagana do użytku komercyjnego.
  • Które IDE jest najlepsze? Dowolne IDE Java — IntelliJ IDEA, Eclipse lub VS Code.
  • Czy Maven jest obsługiwany? Absolutnie — dodaj repozytorium i zależność do swojego pom.xml.

Czym jest GroupDocs.Search dla Javy?

GroupDocs.Search to SDK Java, które indeksuje i przeszukuje tekst w ponad 50+ formatach dokumentów (PDF, DOCX, XLSX, PPTX, TXT itp.) bez ładowania całego pliku do pamięci. Oferuje dopasowanie rozmyte, operatory logiczne, zapytania frazowe oraz wbudowane podświetlanie wyników, co czyni go gotowym rozwiązaniem dla przeszukiwalnych repozytoriów dokumentów.

Dlaczego używać wyszukiwania dokumentów Java z GroupDocs.Search?

Zapewnia szybkość dzięki indeksowanym wyszukiwaniom, zwracając wyniki w mniej niż 10 ms dla 10 k dokumentów, elastyczność dzięki wyszukiwaniu rozmytemu, logice Boole’a, zapytaniom frazowym i rozszerzaniu synonimów, podświetlanie poprzez generowanie podglądów HTML, które automatycznie oznaczają dopasowania, oraz skalowalność działając na miejscu, w chmurze lub w środowiskach hybrydowych, obsługując pliki wielostronicowe bez nadmiernego zużycia pamięci.

Wymagania wstępne

  • Java Development Kit (JDK) 8 lub wyższy.
  • Maven (lub ręczne zarządzanie JAR‑ami).
  • IDE, takie jak IntelliJ IDEA, Eclipse lub VS Code.
  • Podstawowa znajomość struktury projektu Java i Maven.

Konfiguracja GroupDocs.Search dla Java

Instalacja przez Maven

Add the GroupDocs repository and the Search dependency to your 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

If you prefer not to use Maven, download the latest JAR from the official release page: Wydania GroupDocs.Search dla Java.

Kroki uzyskania licencji

  • Free Trial: Rozpocznij darmową wersję próbną, aby zapoznać się z funkcjami.
  • Temporary License: Uzyskaj poprzez oficjalną stronę GroupDocs.
  • Purchase: Kup pełną licencję na nieograniczone użycie produkcyjne.

Podstawowa inicjalizacja i konfiguracja

The Index class is the core component that represents a searchable index stored on disk. After creating an index folder, you instantiate the Index object to add, delete, or query documents:

String indexFolder = "YOUR_DOCUMENT_DIRECTORY/ObtainSearchResultInformation";
Index index = new Index(indexFolder);

Jak wyszukiwać dokumenty Java – Funkcja 1: Wyodrębnianie informacji o wynikach wyszukiwania

Ta funkcja wyjaśnia, jak uruchomić zapytanie, pobrać dopasowane dokumenty i uzyskać szczegółowe dane o wystąpieniach każdego terminu. Postępując zgodnie z krokami, możesz tworzyć pulpity analityczne lub generować szczegółowe raporty z wyników wyszukiwania.

Krok 1: Utwórz indeks

The Index class is the top‑level object that stores searchable metadata on disk. Creating it points to a folder where all index files will reside:

String indexFolder = YOUR_DOCUMENT_DIRECTORY + "/ObtainSearchResultInformation";
Index index = new Index(indexFolder);
index.add(documentFolder);

Krok 2: Skonfiguruj opcje wyszukiwania (włącz wyszukiwanie rozmyte)

SearchOptions lets you fine‑tune query behavior. Setting FuzzySearch to true enables approximate matching, which is useful for handling typos or OCR errors:

SearchOptions options = new SearchOptions();
options.getFuzzySearch().setEnabled(true);
options.getFuzzySearch().setFuzzyAlgorithm(new TableDiscreteFunction(3));

Krok 3: Wykonaj wyszukiwanie

Index.search runs the query against the prepared index and returns a SearchResult collection containing matched documents and term occurrences:

String query = "favourable OR \"ipsum dolor\"";
SearchResult result = index.search(query, options);

Obiekt SearchResult zawiera listę dokumentów pasujących do zapytania oraz ich oceny trafności.

Krok 4: Wyodrębnij wystąpienia

Each SearchResult item provides getOccurrences() which returns the exact positions of the query terms inside the source file, allowing you to build analytics dashboards or detailed reports:

for (int i = 0; i < result.getDocumentCount(); i++) {
    FoundDocument document = result.getFoundDocument(i);
    for (FoundDocumentField field : document.getFoundFields()) {
        if (field.getTerms() != null) {
            for (String term : field.getTerms()) {
                int occurrences = field.getTermsOccurrences()[field.getTerms().indexOf(term)];
                System.out.println("Term: " + term + ", Occurrences: " + occurrences);
            }
        }
        if (field.getTermSequences() != null) {
            for (String[] terms : field.getTermSequences()) {
                int occurrences = field.getTermSequencesOccurrences()[ArrayUtils.indexOf(field.getTermSequences(), terms)];
                StringBuilder sequence = new StringBuilder();
                for (String term : terms) {
                    sequence.append(term).append(" ");
                }
                System.out.println("Phrase: " + sequence.toString() + ", Occurrences: " + occurrences);
            }
        }
    }
}

Funkcja 2: Podświetlanie terminów wyszukiwania Java w dokumentach

Wygeneruj podgląd HTML, w którym każde dopasowanie jest otoczone tagiem <mark>, dając użytkownikom końcowym natychmiastowe wskazówki wizualne.

Krok 1: Skonfiguruj indeks z wysoką kompresją

High compression reduces storage by up to 70 % while keeping query speed within milliseconds. Adjust the CompressionLevel property before indexing:

String indexFolder = YOUR_DOCUMENT_DIRECTORY + "/HighlightSearchResults";
IndexSettings settings = new IndexSettings();
settings.setTextStorageSettings(new TextStorageSettings(Compression.High));
Index index = new Index(indexFolder, settings);
index.add(documentFolder);

Krok 2: Wykonaj wyszukiwanie i podświetl wyniki

After executing the search, call highlight() on the SearchResult object to produce an HTML file that highlights every occurrence of the query term. The highlight() method generates an HTML preview with matched terms wrapped in <mark> tags:

SearchResult result = index.search("solicitude");
if (result.getDocumentCount() > 0) {
    FoundDocument document = result.getFoundDocument(0);
    String path = YOUR_OUTPUT_DIRECTORY + "/Highlighted.html";
    OutputAdapter outputAdapter = new FileOutputAdapter(OutputFormat.Html, path);
    Highlighter highlighter = new DocumentHighlighter(outputAdapter);
    index.highlight(document, highlighter);
}

Praktyczne zastosowania

  1. Przegląd dokumentów prawnych – Znajdź konkretne klauzule w tysiącach umów w ciągu kilku sekund.
  2. Badania akademickie – Wyodrębnij kluczowe frazy z prac naukowych do przeglądów literatury.
  3. Wsparcie klienta – Zidentyfikuj powtarzające się problemy w archiwach e‑mail, aby ulepszyć strony FAQ.
  4. Zarządzanie treścią – Podświetlaj słowa kluczowe SEO w artykułach i blogach w celu szybkich kontroli redakcyjnych.

Rozważania dotyczące wydajności

  • Kompresja: Wysoka kompresja zmniejsza zużycie przestrzeni, ale może zwiększyć zużycie CPU; przeprowadź benchmark przy typowym obciążeniu.
  • Zarządzanie pamięcią: Indeksuj dokumenty w partiach po 500 – 1 000 plików, aby utrzymać stertę JVM pod kontrolą.
  • Odświeżanie indeksu: Przeprowadzaj ponowne indeksowanie zmienionych plików co noc, aby wyniki wyszukiwania były aktualne.

Podsumowanie

Ten przewodnik pokazał, jak implement groupdocs search java, wyodrębnić szczegółowe informacje o wynikach oraz highlight search terms java w podglądach HTML. Postępując zgodnie z tymi krokami, możesz zapewnić szybkie, przyjazne dla użytkownika doświadczenia wyszukiwania w dowolnym repozytorium dokumentów.

Kolejne kroki

  • Osadź podświetlony HTML w interfejsie webowym przy użyciu <iframe> lub renderowania po stronie serwera.
  • Eksperymentuj z dodatkowymi SearchOptions, takimi jak SynonymSearch lub WildcardSearch.
  • Zagłęb się w dokumentację API GroupDocs.Search, aby poznać niestandardowe punktowanie, stronicowanie wyników i wsparcie wielojęzyczne.

Najczęściej zadawane pytania

Q: Czym jest GroupDocs.Search?
A: GroupDocs.Search to SDK Java, które indeksuje i przeszukuje tekst w ponad 50 formatach dokumentów, oferując dopasowanie rozmyte i podświetlanie wyników.

Q: Jak działa wyszukiwanie rozmyte?
A: Toleruje konfigurowalną liczbę różnic znakowych, umożliwiając dopasowania do błędnie napisanych słów lub błędów OCR.

Q: Czy mogę używać GroupDocs.Search bez licencji?
A: Tak, dostępna jest darmowa wersja próbna, ale pełna licencja jest wymagana przy wdrożeniach produkcyjnych.

Q: Jakie formaty plików są obsługiwane?
A: PDF, DOCX, XLSX, PPTX, TXT i wiele innych — zobacz oficjalną dokumentację, aby uzyskać pełną listę.

Q: Jak wyświetlić podświetlone wyniki w aplikacji webowej?
A: Serwuj wygenerowany plik HTML bezpośrednio lub osadź jego zawartość na stronie przy użyciu <iframe> lub renderowania po stronie serwera.


Ostatnia aktualizacja: 2026-07-26
Testowano z: GroupDocs.Search 25.4
Autor: GroupDocs

Powiązane samouczki