25.4
Author: GroupDocs

Translate:

Poslední aktualizace: 2026-03-17
Testováno s: GroupDocs.Search for Java 25.4
Autor: GroupDocs

Then final line:

— (separator) Keep as is.

We need to ensure we keep markdown formatting, code fences placeholders unchanged.

Now produce final content.# Zvýraznění výsledků vyhledávání Java pomocí GroupDocs.Search

Pokud máte dost manuálního procházení nekonečných dokumentů, highlight search results java nabízí rychlý a spolehlivý způsob, jak získat přesně to, co potřebujete. V tomto tutoriálu vás provedeme nastavením distribuované vyhledávací sítě, indexováním souborů, spouštěním dotazů a nakonec zvýrazněním shod přímo v dokumentech. Na konci budete mít řešení připravené do produkce, které může škálovat napříč více uzly a okamžitě zvýrazní relevantní termíny.

Rychlé odpovědi

  • Co znamená “highlight search results java”? Jedná se o programové označování nalezených klíčových slov v dokumentech při použití Java knihoven, jako je GroupDocs.Search.
  • Mohu zvýraznit více termínů ve stejném dokumentu? Ano – použijte HighlightOptions k definování, kolik termínů před a po každé shodě se zobrazí.
  • Potřebuji licenci pro spuštění tohoto příkladu? Pro testování stačí bezplatná zkušební verze nebo dočasná licence; pro produkci je vyžadována plná licence.
  • Jaká verze Javy je požadována? Java 8 nebo novější.
  • Je tento přístup vhodný pro velké kolekce dokumentů? Rozhodně – vyhledávací síť rozděluje indexování a zátěž dotazů mezi uzly.

Co je Highlight Search Results Java?

Highlight search results java je proces, který vezme vyhledávací dotaz, najde odpovídající fragmenty ve vašich dokumentech a vizuálně je zvýrazní (např. obklopením značkami nebo vrácením jako zvýrazněných úryvků). To usnadňuje koncovým uživatelům vidět kontext každé shody, aniž by museli otevírat celý soubor.

Proč je důležité zvýraznění výsledků vyhledávání Java

Použití highlight search results java zlepšuje uživatelský zážitek tím, že ukazuje přesně, kde se termín vyskytuje, snižuje čas strávený otevíráním irelevantních souborů a pomáhá týmům pro soulad rychle najít citlivé informace. V kombinaci s distribuovanou vyhledávací sítí zůstává řešení responzivní i při růstu korpusu dokumentů do milionů.

Proč použít GroupDocs.Search pro zvýrazňování?

GroupDocs.Search poskytuje hotový, výkonný engine, který podporuje desítky formátů souborů, distribuované indexování a vestavěné zvýrazňovače fragmentů. Odstraňuje potřebu psát vlastní parsery nebo spravovat nízkoúrovňovou vyhledávací infrastrukturu, což vám umožní soustředit se na poskytování plynulého uživatelského zážitku.

Předpoklady

  • Java Development Kit (JDK) 8+ – ujistěte se, že java -version vrací 1.8 nebo vyšší.
  • Maven – pro správu závislostí.
  • GroupDocs.Search for Java 25.4 – verze použitá v celém tomto návodu.
  • IDE jako IntelliJ IDEA nebo Eclipse (volitelné, ale doporučené).
  • Základní znalost Javy a síťových konceptů.

Nastavení GroupDocs.Search pro Java

Knihovnu můžete do svého projektu přidat buď pomocí Maven, nebo stažením JAR souboru přímo.

Nastavení Maven

Přidejte repozitář a závislost do souboru 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>

Přímé stažení

Alternativně stáhněte nejnovější JAR ze GroupDocs.Search for Java releases.

Kroky získání licence

  • Free Trial: Začněte s trial verzí pro prozkoumání hlavních funkcí.
  • Temporary License: Získejte rozšířenou testovací licenci na this page.
  • Purchase: Získejte plnou licenci pro produkční nasazení.

Základní inicializace a nastavení

Vytvořte instanci Index, která ukazuje na složku, kde bude uložen vyhledávací index:

import com.groupdocs.search.*;

public class SearchSetup {
    public static void main(String[] args) {
        // Create an instance of Index
        Index index = new Index("path/to/index/directory");
        System.out.println("GroupDocs.Search initialized successfully.");
    }
}

Průvodce implementací

Jak zvýraznit výsledky vyhledávání Java v distribuované síti

Konfigurace vyhledávací sítě

Nejprve definujte, kde jsou vaše dokumenty a který port síť použije.

import com.groupdocs.search.common.*;
import com.groupdocs.search.scaling.configuring.*;

String basePath = "YOUR_DOCUMENT_DIRECTORY/AdvancedUsage/Scaling/HighlightingResultsInNetwork/";
int basePort = 49116; // Change if port is busy

Configuration configuration = ConfiguringSearchNetwork.configure(basePath, basePort);
  • basePath – kořenová složka obsahující soubory, které chcete indexovat.
  • basePort – TCP port pro komunikaci uzlů; vyberte volný.

Nasazení uzlů vyhledávací sítě

Nasazujte jeden nebo více uzlů podle konfigurace. První uzel se stane masterem.

import com.groupdocs.search.scaling.*;

SearchNetworkNode[] nodes = SearchNetworkDeployment.deploy(basePath, basePort, configuration);
SearchNetworkNode masterNode = nodes[0];
  • nodes – pole všech běžících uzlů.
  • masterNode – koordinuje indexování a distribuci dotazů.

Přihlášení k událostem uzlu vyhledávací sítě

Připojte posluchače k master uzlu, aby přijímal notifikace v reálném čase (např. po dokončení indexování).

import com.groupdocs.search.scaling.events.*;

SearchNetworkNodeEvents.subscribe(masterNode);

Indexování adresářů v uzlu sítě

Ukazujte uzel na složku(y), které chcete indexovat. Pomocná třída Utils.DocumentsPath odkazuje na složku se vzorovými daty.

import com.groupdocs.search.examples.Utils;
import com.groupdocs.search.options.*;

IndexingDocuments.addDirectories(masterNode, Utils.DocumentsPath);

Vyhledávání textu napříč uzly sítě

Spusťte dotaz proti všem uzlům a získejte odpovídající dokumenty.

import java.util.ArrayList;
import com.groupdocs.search.scaling.results.*;

ArrayList<NetworkFoundDocument> documents = TextSearchInNetwork.searchAll(masterNode, "ipsum", false);
highlightInDocument(masterNode, documents.get(0), 3); // Highlight results from the first found document.
  • Nahraďte "ipsum" libovolným termínem, který chcete najít.
  • Metoda highlightInDocument (zobrazena níže) použije zvýraznění.

Zvýraznění více termínů v dokumentu – zvýraznění výsledků vyhledávání

Následující metoda ukazuje, jak zvýraznit fragmenty kolem každé shody. Také ukazuje, jak řídit počet okolních termínů, což splňuje sekundární klíčové slovo highlight multiple terms document.

import com.groupdocs.search.highlighters.*;
import com.groupdocs.search.options.*;

public static void highlightInDocument(
    SearchNetworkNode node,
    NetworkFoundDocument document,
    int maxFragments) {
    
    Searcher searcher = node.getSearcher();
    FragmentHighlighter highlighter = new FragmentHighlighter(OutputFormat.PlainText);

    HighlightOptions options = new HighlightOptions();
    options.setTermsAfter(5);
    options.setTermsBefore(5);
    options.setTermsTotal(15);

    searcher.highlight(document, highlighter, options); // Perform highlighting on the document.

    FragmentContainer[] result = highlighter.getResult();
    for (FragmentContainer container : result) {
        if (container.getCount() == 0) continue;

        String[] fragments = container.getFragments();
        int count = Math.min(fragments.length, maxFragments);
        for (int j = 0; j < count; j++) {
            // Print each fragment within the specified limit.
        }
    }
}
  • OutputFormat.PlainText – vrací úryvky v prostém textu; můžete přepnout na HTML pro bohatší UI.
  • HighlightOptions – řídí, kolik slov před a po každé shodě je zahrnuto (setTermsBefore, setTermsAfter).
  • maxFragments – omezuje počet úryvků, které zobrazíte na dokument.

Uzavření uzlů sítě

Po dokončení vypněte všechny uzly, aby se uvolnily prostředky.

for (SearchNetworkNode node : nodes) {
    node.close();
}

Praktické aplikace

  • Enterprise Document Management: Centralizujte firemní soubory a umožněte zaměstnancům okamžitě najít relevantní smlouvy nebo politiky.
  • Legal Case Files: Rychle najděte precedentní dokumenty zvýrazněním klíčových právních termínů.
  • R&D Knowledge Bases: Výzkumníci mohou vyhledávat patenty nebo technické články a vidět zvýrazněné úryvky.
  • E‑commerce Catalogs: Umožněte zákazníkům najít produkty podle klíčového slova s zvýrazněnými shodami v popisech.
  • Library Systems: Čtenáři mohou vyhledávat v tisících knih a zobrazit zvýrazněné pasáže bez otevírání každého souboru.

Úvahy o výkonu

  • Udržujte indexy aktuální: Přindexujte změněné soubory každou noc nebo použijte inkrementální aktualizace.
  • Využijte více uzlů: Rozdělte zátěž indexování a dotazů, aby nedocházelo k úzkým hrdlům.
  • Ladění HighlightOptions: Snížení termsBefore/After snižuje spotřebu paměti u velmi velkých dokumentů.

Časté problémy a řešení

PříznakPravděpodobná příčinaŘešení
Nejsou vráceny žádné výsledkyIndex nebyl vytvořen nebo ukazuje na špatnou složkuOvěřte Utils.DocumentsPath a znovu spusťte IndexingDocuments.addDirectories
Výstup zvýraznění je prázdnýHighlightOptions jsou nastaveny příliš nízko nebo problém s kódováním dokumentuZvyšte termsTotal nebo zajistěte podporu kódování dokumentu
Chyba konfliktu portubasePort je již používánZvolte jiné číslo portu (např. 49117)
Výjimka licenceChybějící nebo vypršený licenční souborUmístěte platný soubor GroupDocs.Search.lic do kořenového adresáře aplikace

Často kladené otázky

Q: Mohu nasadit více uzlů vyhledávací sítě pro vyvážení zátěže?
A: Ano, nasazením několika uzlů se rozloží práce na indexování a dotazy, což zlepšuje škálovatelnost a dobu odezvy.

Q: Jak mohu zvýraznit více vyhledávacích termínů ve stejném dokumentu?
A: Předávejte seznam termínů metodě highlight a nakonfigurujte HighlightOptions, aby zobrazovaly okolní slova pro každou shodu.

Q: Je možné přihlásit se k událostem vyhledávání v reálném čase?
A: Rozhodně. Použijte SearchNetworkNodeEvents.subscribe(masterNode), abyste získali zpětné volání o průběhu indexování, provádění dotazů a chybách.

Q: Jaké formáty souborů GroupDocs.Search podporuje pro indexování a zvýrazňování?
A: Více než 50 formátů, včetně DOCX, PDF, HTML, TXT, PPTX a dalších.

Q: Jak mohu zlepšit rychlost vyhledávání ve velmi velkých kolekcích?
A: Pravidelně aktualizujte indexy, distribuujte je napříč uzly a jemně doladěte HighlightOptions, aby omezily velikost fragmentů.


Poslední aktualizace: 2026-03-17
Testováno s: GroupDocs.Search for Java 25.4
Autor: GroupDocs