Wie man in Java mit Synonymen sucht – GroupDocs.Search

Wenn Sie möchten, dass Ihre Benutzer den richtigen Inhalt finden, selbst wenn sie unterschiedliche Wörter eingeben, ist Suche mit Synonymen die Lösung. In diesem Leitfaden gehen wir alles durch, was Sie wissen müssen – das Erstellen eines Synonym-Wörterbuchs, Import/Export, Verwaltung von Synonym‑Gruppen und schließlich das Ausführen einer Suche, die Abfragen automatisch mit diesen Synonymen erweitert. Egal, ob Sie ein CMS, einen E‑Commerce‑Katalog oder ein Rechtsdokumenten‑Repository bauen, die Unterstützung von Synonymen kann die Relevanz und Konversionsraten dramatisch steigern.

Schnellantworten

  • Was ist der erste Schritt, um Synonyme hinzuzufügen? Initialisieren Sie ein Index und verwenden Sie die SynonymDictionary‑API.
  • Kann ich ein Synonym‑Wörterbuch importieren? Ja – benutzen Sie importDictionary(path), um eine vorgefertigte Datei zu laden.
  • Wie aktiviere ich die Suche mit Synonymen? Setzen Sie SearchOptions.setUseSynonymSearch(true).
  • Ist es möglich, Synonym‑Gruppen zu verwalten? Absolut – Sie können Gruppen über die Wörterbuch‑API löschen, hinzufügen oder abrufen.
  • Worauf sollte ich bei der Optimierung des Suchindexes achten? Entfernen Sie regelmäßig ungenutzte Einträge und passen Sie den JVM‑Heap für große Datensätze an.

Was ist Suche mit Synonymen?

„Suche mit Synonymen“ bedeutet, dass die Engine eine Menge von Wörtern oder Phrasen als austauschbar behandelt. Wenn ein Benutzer „besser“ eingibt, sucht die Engine zusätzlich nach „verbessern“, „steigern“ oder jedem anderen Begriff, den Sie in derselben Synonym‑Gruppe definiert haben, und liefert reichhaltigere Ergebnisse, ohne die Benutzer‑Abfrage zu ändern.

Warum Synonym‑Unterstützung in GroupDocs.Search aktivieren?

  • Besseres Nutzererlebnis: Besucher finden relevante Dokumente, selbst wenn sie unterschiedliche Terminologie verwenden.
  • Höhere Konversionsraten: E‑Commerce‑Plattformen erzielen mehr Verkäufe, indem sie verschiedene Produktbegriffe abgleichen.
  • Vereinfachte Wartung: Ein zentrales Wörterbuch kann mehrere Anwendungen bedienen, wodurch Updates mühelos sind.

Voraussetzungen

  • GroupDocs.Search für Java Version 25.4 oder neuer.
  • Eine Java‑IDE (IntelliJ IDEA, Eclipse usw.) mit Maven‑Unterstützung.
  • Grundkenntnisse in Java und Vertrautheit mit der Maven‑Projektstruktur.

Erforderliche Bibliotheken und Versionen

  • GroupDocs.Search für Java Version 25.4 oder höher.

Umgebung einrichten

  • IDE Ihrer Wahl (IntelliJ IDEA, Eclipse usw.).
  • Maven für das Abhängigkeits‑Management.

Wissensvoraussetzungen

  • Objektorientierte Programmierung in Java.
  • Grundlegende Datei‑I/O‑Operationen.

GroupDocs.Search für Java einrichten

Installationsinformationen

Fügen Sie das Repository und die Abhängigkeit zu Ihrer pom.xml hinzu:

<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>

Direkter Download – Sie können das aktuelle JAR auch von GroupDocs.Search für Java Releases herunterladen.

Lizenzbeschaffung

  • Kostenlose Testversion: Testen Sie Kernfunktionen ohne Lizenz.
  • Temporäre Lizenz: Erweitern Sie die Testmöglichkeiten während der Evaluierung.
  • Kauf: Für den Produktionseinsatz und den vollen Funktionsumfang erforderlich.

Grundlegende Initialisierung und Einrichtung

Erzeugen Sie eine Index‑Instanz und fügen Sie anschließend Dokumente zum Durchsuchen hinzu:

import com.groupdocs.search.*;

String indexFolder = "YOUR_DOCUMENT_DIRECTORY/AdvancedUsage/ManagingDictionaries/SynonymDictionary/Index";
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath2";

// Creating an index in the specified folder
Index index = new Index(indexFolder);

// Adding documents from a specific folder to the index
index.add(documentsFolder);

Wie man Synonyme zum Suchindex hinzufügt

Das Erstellen eines Index ist die Basis. Im Folgenden führen wir die wesentlichen Schritte aus, jeweils mit dem genauen Code, den Sie benötigen.

Feature 1: Erstellen und Indexieren eines Index

// Create an index in the specified folder
Index index = new Index(indexFolder);

// Add documents from the given folder to the index
index.add(documentsFolder);

Feature 2: Abrufen von Synonymen für ein Wort

String[] synonyms = index.getDictionaries().getSynonymDictionary().getSynonyms("make");

Feature 3: Abrufen von Synonym‑Gruppen

String[][] synonymGroups = index.getDictionaries().getSynonymDictionary().getSynonymGroups("make");

Feature 4: Verwalten von Synonym‑Wörterbuch‑Einträgen

if (index.getDictionaries().getSynonymDictionary().getCount() > 0) {
    index.getDictionaries().getSynonymDictionary().clear();
}

String[][] newSynonymGroups = new String[][]{
    new String[] { "achieve", "accomplish", "attain", "reach" },
    new String[] { "accept", "take", "have" },
    new String[] { "improve", "better" }
};

index.getDictionaries().getSynonymDictionary().addRange(newSynonymGroups);

Feature 5: Exportieren von Synonymen in eine Datei

String exportFilePath = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/ManagingDictionaries/SynonymDictionary/Synonyms.dat";
index.getDictionaries().getSynonymDictionary().exportDictionary(exportFilePath);

Feature 6: Importieren von Synonymen aus einer Datei

index.getDictionaries().getSynonymDictionary().importDictionary(exportFilePath);

Feature 7: Durchführen einer Suche mit Synonym‑Unterstützung

String query = "better";
SearchOptions options = new SearchOptions();
options.setUseSynonymSearch(true);

SearchResult result = index.search(query, options);

Wie man mit Synonymen sucht

Durch Setzen von setUseSynonymSearch(true) erweitert die Engine die Abfrage automatisch mithilfe des Synonym‑Wörterbuchs, das Sie erstellt oder importiert haben. Dieser Schritt ist entscheidend, um reichhaltigere Ergebnisse zu liefern, ohne das Suchverhalten des Benutzers zu ändern.

Wie man ein Synonym‑Wörterbuch importiert

Falls Sie bereits eine .dat‑Datei aus einer anderen Umgebung besitzen, rufen Sie einfach importDictionary(path) auf. Das ist ideal, um Wörterbücher über Entwicklungs‑, Staging‑ und Produktions‑Server hinweg zu synchronisieren.

Wie man Synonym‑Gruppen verwaltet

Synonym‑Gruppen ermöglichen es, eine Menge von Begriffen als eine logische Einheit zu behandeln. Hinzufügen, Löschen oder Abrufen von Gruppen erfolgt über die SynonymDictionary‑API, wie in den obigen Code‑Snippets gezeigt.

Wie man den Suchindex optimiert

  • Regelmäßig ungenutzte Einträge entfernen: Verwenden Sie clear() vor Massen‑Updates.
  • JVM‑Heap anpassen: Große Wörterbücher können mehr Speicher benötigen.
  • Bibliothek aktuell halten: Neue Releases enthalten Leistungsverbesserungen.

Praktische Anwendungsfälle

  1. Content‑Management‑Systeme (CMS): Benutzer finden Artikel, selbst wenn sie alternative Begriffe verwenden.
  2. E‑Commerce‑Plattformen: Produktsuchen werden tolerant gegenüber Synonymen wie „Laptop“ vs. „Notebook“.
  3. Dokumenten‑Repositorys: Rechts‑ oder Medizin‑Archive profitieren von domänenspezifischen Synonym‑Gruppen.

Leistungsüberlegungen

  • Indexspeicher optimieren: Index periodisch neu aufbauen, um veraltete Daten zu entfernen.
  • Speichernutzung verwalten: Heap‑Verbrauch beim Laden großer Synonym‑Dateien überwachen.
  • Regelmäßige Updates: Auf die neueste GroupDocs.Search‑Version setzen, um Fehlerbehebungen und Geschwindigkeitsgewinne zu erhalten.

Häufige Probleme und Lösungen

ProblemWahrscheinliche UrsacheLösung
Keine Synonym‑Übereinstimmungen erscheinensetUseSynonymSearch(true) nicht gesetzt oder Wörterbuch nicht importiertÜberprüfen Sie, ob die Option aktiviert ist und die Wörterbuchdatei existiert.
Out‑of‑Memory‑Fehler beim ImportSehr große .dat‑Datei überschreitet JVM‑HeapErhöhen Sie die -Xmx‑Heap‑Größe oder importieren Sie in kleineren Batches.
Doppelte Einträge in den ErgebnissenDerselbe Begriff befindet sich in mehreren Synonym‑GruppenÜberlappende Gruppen mit clear() konsolidieren und dann addRange() verwenden.

Häufig gestellte Fragen

F: Was ist die minimale Systemanforderung für die Nutzung von GroupDocs.Search?
A: Jeder moderne OS mit einer kompatiblen JDK (Java 8 oder neuer) reicht aus.

F: Wie oft sollte ich mein Synonym‑Wörterbuch aktualisieren?
A: Aktualisieren Sie es, sobald neue Terminologie auftaucht – verwenden Sie clear() gefolgt von addRange() für einen sauberen Refresh.

F: Kann ich GroupDocs.Search ohne Lizenz ausführen?
A: Eine kostenlose Testversion ist für die Evaluierung geeignet, aber für den Produktionseinsatz ist eine Lizenz erforderlich.

F: Was sind bewährte Methoden für das Indexieren großer Datenmengen?
A: Daten in logische Batches aufteilen, Heap‑Verbrauch überwachen und regelmäßige Index‑Wartung planen.

F: Ich sehe keine erwarteten Synonym‑Übereinstimmungen – was sollte ich prüfen?
A: Stellen Sie sicher, dass das Wörterbuch korrekt importiert wurde, setUseSynonymSearch(true) aktiv ist und die Begriffe in den Synonym‑Gruppen vorhanden sind.

Ressourcen


Zuletzt aktualisiert: 2026-03-04
Getestet mit: GroupDocs.Search 25.4 für Java
Autor: GroupDocs