Kiemelt keresési eredmények Java a GroupDocs.Search használatával
Ha már belefáradtál a végtelen dokumentumok kézi átböngészésébe, a highlight search results java gyors, megbízható módot kínál arra, hogy pontosan azt kapd, amire szükséged van. Ebben az útmutatóban végigvezetünk a elosztott keresési hálózat beállításán, a fájlok indexelésén, a lekérdezések futtatásán, és végül a találatok közvetlen kiemelésén a dokumentumokon belül. A végére egy termelés‑kész megoldással rendelkezel, amely több csomóponton skálázható, és az releváns kifejezéseket azonnal kiemeli.
Gyors válaszok
- What does “highlight search results java” mean? Ez azt jelenti, hogy programozott módon jelöljük meg a dokumentumokban talált kulcsszavakat Java könyvtárak, például a GroupDocs.Search használatakor.
- Can I highlight multiple terms in the same document? Igen – használd a
HighlightOptions‑t, hogy meghatározd, hány kifejezés jelenjen meg a találat előtt és után. - Do I need a license to run this example? Egy ingyenes próba vagy ideiglenes licenc teszteléshez elegendő; a termeléshez teljes licenc szükséges.
- Which Java version is required? Java 8 vagy újabb.
- Is this approach suitable for large document collections? Teljesen alkalmas – a keresési hálózat elosztja az indexelés és a lekérdezés terhelését a csomópontok között.
Mi a Highlight Search Results Java?
Highlight search results java a folyamat, amely során egy keresési lekérdezést felhasználva megtalálja a dokumentumokban a megfelelő szövegrészeket, és vizuálisan kiemeli azokat (például jelölőkkel körülvéve vagy kiemelt részletként visszaadva). Ez megkönnyíti a végfelhasználók számára, hogy a teljes fájl megnyitása nélkül lássák az egyes találatok környezetét.
Miért használjuk a GroupDocs.Search‑t a kiemeléshez?
A GroupDocs.Search egy kész, nagy teljesítményű motor, amely tucatnyi fájlformátumot támogat, elosztott indexelést és beépített szövegrész‑kiemelőket biztosít. Eltávolítja a saját parszerek írásának vagy az alacsony szintű keresési infrastruktúra kezelésének szükségességét, így a felhasználói élmény sima biztosítására koncentrálhatsz.
Előfeltételek
- Java Development Kit (JDK) 8+ – győződj meg róla, hogy a
java -version1.8‑at vagy újabbat jelez. - Maven – a függőségek kezeléséhez.
- GroupDocs.Search for Java 25.4 – a teljes útmutatóban használt verzió.
- Egy IDE, például IntelliJ IDEA vagy Eclipse (opcionális, de ajánlott).
- Alapvető Java és hálózati ismeretek.
A GroupDocs.Search beállítása Java‑hoz
A könyvtárat a projektedbe Maven‑en keresztül vagy a JAR közvetlen letöltésével viheted be.
Maven beállítás
Add hozzá a tárolót és a függőséget a pom.xml‑hez:
<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>
Közvetlen letöltés
Alternatívaként töltsd le a legújabb JAR‑t a GroupDocs.Search for Java releases oldalról.
Licenc beszerzési lépések
- Free Trial: Kezdj egy próbaidőszakkal a fő funkciók felfedezéséhez.
- Temporary License: Szerezz egy kiterjesztett tesztlicencet erről az oldalról: this page.
- Purchase: Szerezz teljes licencet a termelési környezethez.
Alap inicializálás és beállítás
Hozz létre egy Index példányt, amely egy mappára mutat, ahol a keresési index tárolódik:
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.");
}
}
Implementációs útmutató
Hogyan kiemeljük a keresési eredményeket Java‑ban egy elosztott hálózatban
A keresési hálózat konfigurálása
Először határozd meg, hol vannak a dokumentumaid, és melyik portot használja a hálózat.
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– a gyökérmappa, amely a indexelni kívánt fájlokat tartalmazza.basePort– a TCP port a csomópontok közötti kommunikációhoz; válassz egy szabad portot.
Keresési hálózati csomópontok telepítése
A konfiguráció alapján telepíts egy vagy több csomópontot. Az első csomópont lesz a master.
import com.groupdocs.search.scaling.*;
SearchNetworkNode[] nodes = SearchNetworkDeployment.deploy(basePath, basePort, configuration);
SearchNetworkNode masterNode = nodes[0];
nodes– egy tömb az összes futó csomópontról.masterNode– koordinálja az indexelést és a lekérdezés elosztását.
Keresési hálózati csomópont eseményekre feliratkozás
Csatolj hallgatókat a master csomóponthoz, hogy valós‑időben értesítéseket kapj (például amikor az indexelés befejeződik).
import com.groupdocs.search.scaling.events.*;
SearchNetworkNodeEvents.subscribe(masterNode);
Könyvtárak indexelése a hálózati csomópontban
Állítsd be a csomópontot a indexelni kívánt mappákra. A Utils.DocumentsPath segédosztály a mintaadatok mappájára mutat.
import com.groupdocs.search.examples.Utils;
import com.groupdocs.search.options.*;
IndexingDocuments.addDirectories(masterNode, Utils.DocumentsPath);
Szöveg keresése a hálózati csomópontok között
Futtass egy lekérdezést az összes csomóponton, és szerezd meg a megfelelő dokumentumokat.
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.
- Cseréld le a
"ipsum"‑t arra a kifejezésre, amelyet keresni szeretnél. - A
highlightInDocumentmetódus (a következőben látható) alkalmazni fogja a kiemelést.
Több kifejezés dokumentum kiemelése – Keresési eredmények kiemelése
Az alábbi metódus bemutatja, hogyan lehet kiemelni a találatok körüli szövegrészeket. Emellett megmutatja, hogyan szabályozhatod a környező kifejezések számát, ezzel kielégítve a highlight multiple terms document másodlagos kulcsszót.
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– egyszerű szöveges részleteket ad vissza; HTML‑re válthatsz a gazdagabb felhasználói felülethez.HighlightOptions– szabályozza, hány szó jelenjen meg a találat előtt és után (setTermsBefore,setTermsAfter).maxFragments– korlátozza a dokumentumonként megjelenített részletek számát.
Hálózati csomópontok lezárása
Ha befejezted, állítsd le az összes csomópontot az erőforrások felszabadításához.
for (SearchNetworkNode node : nodes) {
node.close();
}
Gyakorlati alkalmazások
- Enterprise Document Management: Centralizáld a vállalati fájlokat, és engedd, hogy a munkavállalók azonnal megtalálják a releváns szerződéseket vagy irányelveket.
- Legal Case Files: Gyorsan hozd elő a precedens dokumentumokat a kulcsfontosságú jogi kifejezések kiemelésével.
- R&D Knowledge Bases: A kutatók kereshetnek szabadalmakban vagy technikai cikkekben, és láthatják a kiemelt kivonatokat.
- E‑commerce Catalogs: Lehetővé teszi a vásárlók számára, hogy kulcsszó alapján megtalálják a termékeket, a leírásokban kiemelt találatokkal.
- Library Systems: A látogatók több ezer könyvben kereshetnek, és kiemelt szakaszokat tekinthetnek meg anélkül, hogy minden fájlt megnyitnának.
Teljesítménybeli megfontolások
- Keep indexes fresh: Indexeld újra az éjszakánként módosult fájlokat, vagy használj inkrementális frissítéseket.
- Leverage multiple nodes: Oszd el az indexelés és a lekérdezés terhelését több csomópont között, hogy elkerüld a szűk keresztmetszeteket.
- Tune
HighlightOptions: AtermsBefore/Aftercsökkentése csökkenti a memóriahasználatot nagyon nagy dokumentumok esetén.
Gyakori problémák és hibaelhárítás
| Tünet | Valószínű ok | Javítás |
|---|---|---|
| Nincs eredmény visszaadva | Az index nincs felépítve vagy rossz mappára mutat | Ellenőrizd a Utils.DocumentsPath‑t, és futtasd újra az IndexingDocuments.addDirectories‑t |
| A kiemelés kimenete üres | HighlightOptions korlátok túl alacsonyak vagy a dokumentum kódolási problémája | Növeld a termsTotal értékét, vagy biztosítsd, hogy a dokumentum kódolása támogatott |
| Port ütközés hiba | basePort már használatban van | Válassz egy másik portszámot (pl. 49117) |
| Licenc kivétel | Hiányzó vagy lejárt licencfájl | Helyezz egy érvényes GroupDocs.Search.lic fájlt az alkalmazás gyökérkönyvtárába |
Gyakran feltett kérdések
Q: Can I deploy multiple search network nodes for load balancing?
A: Igen, több csomópont telepítése elosztja az indexelés és a lekérdezés munkáját, javítva a skálázhatóságot és a válaszidőt.
Q: How do I highlight multiple search terms in the same document?
A: Adj át egy listát a kifejezésekről a highlight metódusnak, és állítsd be a HighlightOptions‑t, hogy minden találat körül megjelenjenek a környező szavak.
Q: Is it possible to subscribe to real‑time search events?
A: Teljesen lehetséges. Használd a SearchNetworkNodeEvents.subscribe(masterNode)‑t, hogy visszahívásokat kapj az indexelés előrehaladásáról, a lekérdezés végrehajtásáról és a hibákról.
Q: Which file formats does GroupDocs.Search support for indexing and highlighting?
A: Több mint 50 formátum, beleértve a DOCX, PDF, HTML, TXT, PPTX és egyéb formátumokat.
Q: How can I improve search speed on very large collections?
A: Rendszeresen frissítsd az indexeket, oszd el őket csomópontok között, és finomhangold a HighlightOptions‑t a fragmentum méretének korlátozásához.
Következtetés
A guide követésével most már egy teljes, termelés‑kész beállítással rendelkezel a highlight search results java használatához a GroupDocs.Search segítségével. A megoldást hálózaton keresztül skálázhatod, bármely támogatott dokumentumtípust indexelheted, gyors lekérdezéseket futtathatsz, és kiemelt részleteket adsz vissza, amelyek segítik a felhasználókat a pontos megtalálásban. Fedezd fel a következő lépéseket – az eredmények integrálása egy webes UI‑ba, a facettált keresés hozzáadása, vagy OCR kombinálása beolvasott PDF‑ekhez.
Utolsó frissítés: 2026-01-08
Tesztelve: GroupDocs.Search for Java 25.4
Szerző: GroupDocs