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 -version 1.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 highlightInDocument metó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: A termsBefore/After csökkentése csökkenti a memóriahasználatot nagyon nagy dokumentumok esetén.

Gyakori problémák és hibaelhárítás

TünetValószínű okJavítás
Nincs eredmény visszaadvaAz index nincs felépítve vagy rossz mappára mutatEllenőrizd a Utils.DocumentsPath‑t, és futtasd újra az IndexingDocuments.addDirectories‑t
A kiemelés kimenete üresHighlightOptions korlátok túl alacsonyak vagy a dokumentum kódolási problémájaNöveld a termsTotal értékét, vagy biztosítsd, hogy a dokumentum kódolása támogatott
Port ütközés hibabasePort már használatban vanVálassz egy másik portszámot (pl. 49117)
Licenc kivételHiányzó vagy lejárt licencfájlHelyezz 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