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
HighlightOptionsk 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 -versionvrací 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/Aftersnižuje spotřebu paměti u velmi velkých dokumentů.
Časté problémy a řešení
| Příznak | Pravděpodobná příčina | Řešení |
|---|---|---|
| Nejsou vráceny žádné výsledky | Index nebyl vytvořen nebo ukazuje na špatnou složku | Ověř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 dokumentu | Zvyšte termsTotal nebo zajistěte podporu kódování dokumentu |
| Chyba konfliktu portu | basePort je již používán | Zvolte jiné číslo portu (např. 49117) |
| Výjimka licence | Chybějící nebo vypršený licenční soubor | Umí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