Vytvořit prohledávatelný index Java: přidat dokumenty s rozlišováním velikosti písmen

V moderních Java aplikacích je vytváření prohledávatelného indexu Java základem pro rychlé a přesné získávání informací z velkých kolekcí dokumentů. Tento tutoriál vám ukáže, jak přidat dokumenty do indexu, povolit rozlišování velikosti písmen při vyhledávání a vyladit proces pomocí GroupDocs.Search. Ať už budujete právní úložiště, e‑commerce katalog nebo systém pro správu obsahu, tyto kroky vám pomohou poskytovat přesné výsledky, které udrží uživatele spokojené.

Rychlé odpovědi

  • Jaký je hlavní krok pro zahájení vyhledávání? Přidejte dokumenty do indexu pomocí index.add(...).
  • Jak povolit rozlišování velikosti písmen při vyhledávání? Nastavte options.setUseCaseSensitiveSearch(true).
  • Můžete vyhledávat napříč více adresáři? Ano – zavolejte index.add() pro každou složku, kterou chcete zahrnout.
  • Která metoda umožňuje vyhledávat pomocí objektů? Použijte SearchQuery.createWordQuery(...).
  • Potřebujete licenci pro testování? Dočasná licence je k dispozici pro zkušební účely.

Co znamená „přidat dokumenty do indexu“?

Přidání dokumentů do indexu znamená vložit vaše zdrojové soubory (PDF, Word dokumenty, prostý text atd.) do GroupDocs.Search, aby mohl vytvořit prohledávatelnou datovou strukturu. Index ukládá tokenizované termíny, pozice a metadata, což umožňuje enginu provádět rychlé dotazy, včetně dotazů rozlišujících velikost písmen, a efektivně řadit výsledky.

Proč povolit rozlišování velikosti písmen při vyhledávání v Java?

Povolení rozlišování velikosti písmen při vyhledávání zajišťuje, že engine rozlišuje mezi termíny, které se liší pouze velikostí písmen, což je kritické pro domény, kde má kapitalizace význam. Umožňuje přesnou shodu termínů, podporuje požadavky na regulatorní soulad a zlepšuje relevance tím, že vrací výsledky, které přesně odpovídají velikosti písmen v dotazu uživatele.

  • Exact term matching – např. „Apple“ (společnost) vs. „apple“ (ovoce).
  • Regulatory compliance – mnoho odvětví vyžaduje přesnou shodu frází.
  • Improved relevance – technickí a právní uživatelé často očekávají výsledky specifické pro velikost písmen.

Požadavky

  • JDK 17 nebo novější (doporučeno)
  • Maven pro správu závislostí
  • IDE jako IntelliJ IDEA nebo Eclipse
  • Základní znalost programování v Javě

Nastavení GroupDocs.Search pro Java

Následující úryvek Maven přidá repozitář GroupDocs.Search a požadovanou závislost do vašeho projektu.

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

Alternativně můžete stáhnout nejnovější verzi přímo z GroupDocs.Search for Java releases.

Licencování

Pro zahájení zkušební verze navštivte GroupDocs a získejte dočasnou licenci. To vám umožní otestovat všechny funkce bez jakýchkoli omezení.

Jak vytvořit prohledávatelný index Java – vyhledávání textovým dotazem

Krok 1: vytvořit index a přidat vaše dokumenty

Třída Index představuje prohledávatelnou úložnou oblast na disku, kde jsou dokumenty indexovány.

String indexFolder = YOUR_OUTPUT_DIRECTORY + "/CaseSensitiveSearch/QueryInTextForm";
Index index = new Index(indexFolder);
index.add(YOUR_DOCUMENT_DIRECTORY); // Add documents to the index

Tip: Můžete zavolat index.add() vícekrát pro vyhledávání napříč více adresáři v jednom indexu.

Krok 2: povolit rozlišování velikosti písmen při vyhledávání

SearchOptions konfiguruje, jak jsou dotazy zpracovávány, včetně rozlišování velikosti písmen a dalších chování vyhledávání.

SearchOptions options = new SearchOptions();
options.setUseCaseSensitiveSearch(true);

Krok 3: provést textový dotaz s rozlišováním velikosti písmen

SearchQuery vytváří objekt dotazu, který engine vyhodnocuje vůči indexu.

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

// Output results
for (FoundDocument doc : result.getDocuments()) {
    System.out.println("Document: " + doc.getDocumentInfo().getFilePath());
}

Smyčka vypíše úplnou cestu každého dokumentu, který obsahuje přesně shodný termín s rozlišením velikosti písmen.

Jak vytvořit prohledávatelný index Java – vyhledávání objektovým dotazem

Krok 1: inicializovat druhý index (volitelné)

Druhá instance Index může být vytvořena k oddělení vyhledávání založeného na objektech od vyhledávání prostého textu.

String indexFolder = YOUR_OUTPUT_DIRECTORY + "/CaseSensitiveSearch/QueryInObjectForm";
Index index = new Index(indexFolder);
index.add(YOUR_DOCUMENT_DIRECTORY); // Add documents to the index

Krok 2: znovu použít možnost rozlišování velikosti písmen

SearchOptions může být znovu použita napříč různými typy dotazů pro zachování konzistentního zacházení s velikostí písmen.

SearchOptions options = new SearchOptions();
options.setUseCaseSensitiveSearch(true);

Krok 3: vytvořit a spustit objektový dotaz

WordQuery představuje vyhledávání na úrovni slova, které může být kombinováno s jinými typy dotazů pro složité vyhledávání.

SearchQuery query = SearchQuery.createWordQuery("Advantages");
SearchResult result = index.search(query, options);

// Output results
for (FoundDocument doc : result.getDocuments()) {
    System.out.println("Document: " + doc.getDocumentInfo().getFilePath());
}

Použití createWordQuery vám umožní později jej kombinovat s frázovými, zástupnými nebo Booleanovými dotazy pro složitější scénáře.

Praktické aplikace

  • Legal document management: Vyhledávejte zákony specifické pro konkrétní případy, kde je kapitalizace důležitá.
  • E‑commerce platforms: Rozlišujte produktové SKU jako „PRO‑X“ vs. „pro‑x“.
  • Content management systems (CMS): Zajistěte, aby autoři našli přesné nadpisy nebo značky.

Úvahy o výkonu

  • Keep the index up‑to‑date – provádějte reindexaci, když jsou přidány nové soubory nebo se změní existující.
  • Monitor memory usage – velké korpusy těží z inkrementálního indexování a správného nastavení velikosti haldy JVM.
  • Leverage Java’s garbage collector – uvolněte objekty Index, když již nejsou potřeba.

Časté problémy a řešení

ProblémŘešení
useCaseSensitiveSearch se zdá být ignorovánOvěřte, že používáte nejnovější verzi GroupDocs.Search a že byl index přestavěn po změně této volby.
Nebyly vráceny žádné výsledky pro známý termínUjistěte se, že velikost písmen termínu přesně odpovídá a že dokument byl úspěšně přidán do indexu.
Vyhledávání v mnoha složkách zpomalujePřidejte každou složku samostatně pomocí index.add() a zvažte rozdělení indexu na shardy pro velmi velké datové sady.

Často kladené otázky

Q: Jak mohu pracovat s velkými datovými sadami pomocí GroupDocs.Search?
A: Využijte rozdělení indexu, dolaďte nastavení paměti JVM a periodicky kompaktně index, aby byl výkon optimální.

Q: Mohu vyhledávat napříč více adresáři současně?
A: Ano – zavolejte index.add() pro každou adresář, který chcete zahrnout, a poté spusťte jediný dotaz proti kombinovanému indexu.

Q: Jaké jsou běžné úskalí při nastavování vyhledávání s rozlišením velikosti písmen?
A: Zapomenutí přestavět index po povolení useCaseSensitiveSearch nebo použití nesprávné velikosti písmen ve vyhledávacím řetězci.

Q: Jak mohu řešit chyby vyhledávání?
A: Zkontrolujte soubory protokolu generované GroupDocs.Search pro stack trace a ověřte, že všechny Maven závislosti jsou správně vyřešeny.

Q: Je GroupDocs.Search vhodný pro aplikace v reálném čase?
A: S vhodnými strategiemi indexování (inkrementální aktualizace a cachování v paměti) může poskytovat téměř real‑time výsledky vyhledávání.

Zdroje


Poslední aktualizace: 2026-08-10
Testováno s: GroupDocs.Search 25.4
Autor: GroupDocs


Související tutoriály