Επισήμανση Αποτελεσμάτων Αναζήτησης Java με τη χρήση του GroupDocs.Search

Αν είστε κουρασμένοι από το να ψάχνετε χειροκίνητα μέσα σε ατελείωτα έγγραφα, highlight search results java προσφέρει έναν γρήγορο, αξιόπιστο τρόπο για να εμφανίσετε ακριβώς ό,τι χρειάζεστε. Σε αυτό το tutorial θα περάσουμε από τη διαμόρφωση ενός κατανεμημένου δικτύου αναζήτησης, την ευρετηρίαση των αρχείων σας, την εκτέλεση ερωτημάτων και, τέλος, την επισήμανση των αντιστοιχίσεων απευθείας μέσα στα έγγραφα. Στο τέλος, θα έχετε μια λύση έτοιμη για παραγωγή που μπορεί να κλιμακωθεί σε πολλαπλούς κόμβους και να κάνει τους σχετικούς όρους να ξεχωρίζουν αμέσως.

Γρήγορες Απαντήσεις

  • Τι σημαίνει το “highlight search results java”; Αναφέρεται στο προγραμματιστικό σήμανση των ευρεθέντων λέξεων‑κλειδιών μέσα σε έγγραφα όταν χρησιμοποιούνται βιβλιοθήκες Java όπως το GroupDocs.Search.
  • Μπορώ να επισήμανω πολλούς όρους στο ίδιο έγγραφο; Ναι – χρησιμοποιήστε το HighlightOptions για να ορίσετε πόσοι όροι πριν/μετά από κάθε αντιστοιχία θα εμφανίζονται.
  • Χρειάζομαι άδεια για να εκτελέσω αυτό το παράδειγμα; Μια δωρεάν δοκιμή ή προσωρινή άδεια λειτουργεί για δοκιμές· απαιτείται πλήρης άδεια για παραγωγή.
  • Ποια έκδοση της Java απαιτείται; Java 8 ή νεότερη.
  • Είναι αυτή η προσέγγιση κατάλληλη για μεγάλες συλλογές εγγράφων; Απόλυτα – το δίκτυο αναζήτησης διανέμει την ευρετηρίαση και το φορτίο των ερωτημάτων σε πολλούς κόμβους.

Τι είναι το Highlight Search Results Java;

Highlight search results java είναι η διαδικασία λήψης ενός ερωτήματος αναζήτησης, εντοπισμού των ταιριαστών τμημάτων στα έγγραφά σας και οπτικής έμφασης αυτών των τμημάτων (π.χ., με περιτύλιξη τους με δείκτες ή επιστροφή τους ως επισημασμένα αποσπάσματα). Αυτό καθιστά εύκολο για τους τελικούς χρήστες να δουν το πλαίσιο κάθε αντιστοιχίας χωρίς να ανοίξουν ολόκληρο το αρχείο.

Γιατί να Χρησιμοποιήσετε το GroupDocs.Search για Επισήμανση;

Το GroupDocs.Search παρέχει μια έτοιμη, υψηλής απόδοσης μηχανή που υποστηρίζει δεκάδες μορφές αρχείων, κατανεμημένη ευρετηρίαση και ενσωματωμένους επισημαστές τμημάτων. Αφαιρεί την ανάγκη να γράψετε προσαρμοσμένους αναλυτές ή να διαχειριστείτε υποδομή αναζήτησης χαμηλού επιπέδου, επιτρέποντάς σας να εστιάσετε στην παροχή μιας ομαλής εμπειρίας χρήστη.

Προαπαιτούμενα

  • Java Development Kit (JDK) 8+ – βεβαιωθείτε ότι το java -version εμφανίζει 1.8 ή νεότερη έκδοση.
  • Maven – για διαχείριση εξαρτήσεων.
  • GroupDocs.Search for Java 25.4 – η έκδοση που χρησιμοποιείται σε όλη αυτήν την οδηγία.
  • Ένα IDE όπως το IntelliJ IDEA ή το Eclipse (προαιρετικό αλλά συνιστάται).
  • Βασικές γνώσεις Java και εννοιών δικτύωσης.

Ρύθμιση του GroupDocs.Search για Java

Μπορείτε να προσθέσετε τη βιβλιοθήκη στο έργο σας είτε μέσω Maven είτε κατεβάζοντας το JAR απευθείας.

Ρύθμιση Maven

Add the repository and 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>

Άμεση Λήψη

Εναλλακτικά, κατεβάστε το πιο πρόσφατο JAR από το GroupDocs.Search for Java releases.

Βήματα Απόκτησης Άδειας

  • Free Trial: Ξεκινήστε με μια δοκιμή για να εξερευνήσετε τις βασικές λειτουργίες.
  • Temporary License: Λάβετε μια εκτεταμένη δοκιμαστική άδεια από this page.
  • Purchase: Αποκτήστε πλήρη άδεια για παραγωγικές εγκαταστάσεις.

Βασική Αρχικοποίηση και Ρύθμιση

Create an Index instance that points to a folder where the search index will be stored:

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.");
    }
}

Οδηγός Υλοποίησης

Πώς να Επισήμανση Αποτελεσμάτων Αναζήτησης Java σε Κατανεμημένο Δίκτυο

Διαμόρφωση του Δικτύου Αναζήτησης

First, define where your documents live and which port the network will use.

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 – ο ριζικός φάκελος που περιέχει τα αρχεία που θέλετε να ευρετηριάσετε.
  • basePort – η θύρα TCP για επικοινωνία κόμβων· επιλέξτε μια αχρησιμοποίητη.

Ανάπτυξη Κόμβων Δικτύου Αναζήτησης

Deploy one or more nodes based on the configuration. The first node becomes the master.

import com.groupdocs.search.scaling.*;

SearchNetworkNode[] nodes = SearchNetworkDeployment.deploy(basePath, basePort, configuration);
SearchNetworkNode masterNode = nodes[0];
  • nodes – ένας πίνακας με όλους τους ενεργούς κόμβους.
  • masterNode – συντονίζει την ευρετηρίαση και τη διανομή ερωτημάτων.

Εγγραφή σε Συμβάντα Κόμβου Δικτύου Αναζήτησης

Attach listeners to the master node to receive real‑time notifications (e.g., when indexing completes).

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

SearchNetworkNodeEvents.subscribe(masterNode);

Ευρετηρίαση Καταλόγων σε Κόμβο Δικτύου

Point the node to the folder(s) you want to index. The helper class Utils.DocumentsPath resolves to the sample data folder.

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

IndexingDocuments.addDirectories(masterNode, Utils.DocumentsPath);

Αναζήτηση Κειμένου σε Όλους τους Κόμβους Δικτύου

Run a query against all nodes and retrieve the matching documents.

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.
  • Αντικαταστήστε το "ipsum" με οποιονδήποτε όρο θέλετε να βρείτε.
  • Η μέθοδος highlightInDocument (που φαίνεται παρακάτω) θα εφαρμόσει την επισήμανση.

Επισήμανση Πολλαπλών Όρων σε Έγγραφο – Επισήμανση Αποτελεσμάτων Αναζήτησης

The following method demonstrates how to highlight fragments around each match. It also shows how to control the number of surrounding terms, satisfying the secondary keyword 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 – επιστρέφει αποσπάσματα απλού κειμένου· μπορείτε να μεταβείτε σε HTML για πιο πλούσιο UI.
  • HighlightOptions – ελέγχει πόσες λέξεις πριν/μετά από κάθε αντιστοιχία περιλαμβάνονται (setTermsBefore, setTermsAfter).
  • maxFragments – περιορίζει τον αριθμό των αποσπασμάτων που εμφανίζετε ανά έγγραφο.

Κλείσιμο Κόμβων Δικτύου

When you’re done, shut down every node to free resources.

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

Πρακτικές Εφαρμογές

  • Enterprise Document Management: Κεντρικοποιήστε τα εταιρικά αρχεία και επιτρέψτε στους υπαλλήλους να εντοπίζουν άμεσα σχετικές συμβάσεις ή πολιτικές.
  • Legal Case Files: Εντοπίστε γρήγορα έγγραφα προτύπων επισημαίνοντας βασικούς νομικούς όρους.
  • R&D Knowledge Bases: Οι ερευνητές μπορούν να αναζητούν διπλώματα ευρεσιτεχνίας ή τεχνικές εργασίες και να βλέπουν επισημασμένα αποσπάσματα.
  • E‑commerce Catalogs: Ενεργοποιήστε τους αγοραστές να βρίσκουν προϊόντα με λέξη‑κλειδί με επισημασμένες αντιστοιχίες στις περιγραφές.
  • Library Systems: Οι χρήστες μπορούν να αναζητούν σε χιλιάδες βιβλία και να βλέπουν επισημασμένα αποσπάσματα χωρίς να ανοίγουν κάθε αρχείο.

Σκέψεις Απόδοσης

  • Keep indexes fresh: Επαναευρετηριάστε τα τροποποιημένα αρχεία καθημερινά ή χρησιμοποιήστε σταδιακές ενημερώσεις.
  • Leverage multiple nodes: Διανείμετε την ευρετηρίαση και το φορτίο των ερωτημάτων για να αποφύγετε τα σημεία συμφόρησης.
  • Tune HighlightOptions: Η μείωση των termsBefore/After μειώνει τη χρήση μνήμης για πολύ μεγάλα έγγραφα.

Συνηθισμένα Προβλήματα & Επίλυση

SymptomLikely CauseFix
Δεν επιστράφηκαν αποτελέσματαΤο ευρετήριο δεν έχει δημιουργηθεί ή δείχνει σε λάθος φάκελοΕπαληθεύστε το Utils.DocumentsPath και εκτελέστε ξανά το IndexingDocuments.addDirectories
Η έξοδος επισήμανσης είναι κενήΤα όρια του HighlightOptions είναι πολύ χαμηλά ή υπάρχει πρόβλημα κωδικοποίησης του εγγράφουΑυξήστε το `θείτε ότι η κωδικοποίηση του εγγράφου υποστηρίζεται
Σφάλμα σύγκρουσης θύραςΗ basePort χρησιμοποιείται ήδηΕπιλέξτε διαφορετικό αριθμό θύρας (π.χ., 49117)
Εξαίρεση άδειαςΑπουσία ή λήξη του αρχείου άδειαςΤοποθετήστε ένα έγκυρο αρχείο GroupDocs.Search.lic στη ρίζα της εφαρμογής

Συχνές Ερωτήσεις

Q: Μπορώ να αναπτύξω πολλαπλούς κόμβους δικτύου αναζήτησης για εξισορρόπηση φορτίου;
A: Ναι, η ανάπτυξη πολλών κόμβων διανέμει την εργασία ευρετηρίασης και ερωτημάτων, βελτιώνοντας την κλιμακωσιμότητα και τον χρόνο απόκρισης.

Q: Πώς μπορώ να επισήμανω πολλούς όρους αναζήτησης στο ίδιο έγγραφο;
A: Περνάτε μια λίστα όρων στη μέθοδο highlight και ρυθμίζετε το HighlightOptions ώστε να εμφανίζει τις γύρω λέξεις για κάθε αντιστοιχία.

Q: Είναι δυνατόν να εγγραφείτε σε συμβάντα αναζήτησης σε πραγματικό χρόνο;
A: Απόλυτα. Χρησιμοποιήστε το SearchNetworkNodeEvents.subscribe(masterNode) για να λαμβάνετε callbacks για την πρόοδο ευρετηρίασης, την εκτέλεση ερωτημάτων και σφάλματα.

Q: Ποιες μορφές αρχείων υποστηρίζει το GroupDocs.Search για ευρετηρίαση και επισήμανση;
A: Πάνω από 50 μορφές, συμπεριλαμβανομένων των DOCX, PDF, HTML, TXT, PPTX και άλλων.

Q: Πώς μπορώ να βελτιώσω την ταχύτητα αναζήτησης σε πολύ μεγάλες συλλογές;
A: Ενημερώνετε τακτικά τα ευρετήρια, τα διανέμετε σε πολλούς κόμβους και ρυθμίζετε προσεκτικά το HighlightOptions για να περιορίσετε το μέγεθος των τμημάτων.

Συμπέρασμα

Ακολουθώντας αυτόν τον οδηγό, έχετε τώρα μια πλήρη, έτοιμη για παραγωγή ρύθμιση για highlight search results java χρησιμοποιώντας το GroupDocs.Search. Μπορείτε να κλιμακώσετε τη λύση σε ένα δίκτυο, να ευρετηριάσετε οποιονδήποτε υποστηριζόμενο τύπο εγγράφου, να εκτελείτε γρήγορα ερωτήματα και να επιστρέφετε επισημασμένα αποσπάσματα που βοηθούν τους χρήστες να βρουν ακριβώς ό,τι χρειάζονται. Εξερευνήστε τα επόμενα βήματα—ενσωμάτωση των αποτελεσμάτων σε web UI, προσθήκη faceted search ή συνδυασμός με OCR για σαρωμένα PDF.


Τελευταία Ενημέρωση: 2026-01-08
Δοκιμή Με: GroupDocs.Search for Java 25.4
Συγγραφέας: GroupDocs