Search by Attribute Java s průvodcem GroupDocs.Search

Rychlé odpovědi

  • Co je “search by attribute java”? Jedná se o možnost filtrovat výsledky vyhledávání pomocí vlastních metadat připojených k jednotlivým dokumentům.
  • Mohu měnit atributy po indexaci? Ano – použijte AttributeChangeBatch pro hromadnou aktualizaci atributů dokumentů.
  • Jak přidat atributy během indexace? Přihlaste se k události FileIndexing a nastavte atributy programově.
  • Potřebuji licenci? Bezplatná zkušební verze stačí pro hodnocení; pro produkci je vyžadována trvalá licence.
  • Jaká verze Javy je požadována? Doporučuje se Java 8 nebo novější.

Co je “search by attribute java”?

Search by attribute java vám umožňuje dotazovat se na dokumenty na základě jejich metadat (atributů) místo samotného obsahu. Připojením párů klíč‑hodnota jako public, main nebo key k jednotlivým souborům můžete rychle zúžit výsledky na nejrelevantnější podmnožinu.

Proč používat dynamické označování metadat?

  • Dynamická kategorizace – udržujte metadata v souladu s měnícími se obchodními pravidly.
  • Rychlejší filtrování – filtry atributů jsou vyhodnoceny před full‑textovým vyhledáváním, což zvyšuje rychlost odezvy.
  • Sledování souladu – označujte dokumenty pro politiky uchovávání nebo požadavky auditu.
  • Hromadná aktualizace atributů – změňte mnoho dokumentů v jedné operaci bez nutnosti kompletní reindexace.

Předpoklady

  • Java 8+ (JDK 8 nebo novější)
  • GroupDocs.Search for Java knihovna (viz nastavení Maven níže)
  • Základní znalost Javy a konceptů indexování

Nastavení GroupDocs.Search pro Java

Nastavení Maven

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

Přímé stažení

Alternativně stáhněte nejnovější verzi z GroupDocs.Search for Java releases. Pokud raději nepoužíváte nástroj pro sestavení jako Maven, stáhněte JAR ze stránky GroupDocs.

Získání licence

  • Začněte s bezplatnou zkušební verzí a prozkoumejte funkce.
  • Pro delší používání získáte dočasnou nebo plnou licenci na stránce licence.

Základní inicializace

import com.groupdocs.search.Index;

// Initialize an index in a specified directory
Index index = new Index("YOUR_OUTPUT_DIRECTORY/ChangeAttributes");

Jak upravit atributy dokumentů (hromadná aktualizace)

Search by Attribute Java – změna atributů dokumentů

Můžete přidávat, odstraňovat nebo nahrazovat atributy u již indexovaných dokumentů, což umožňuje hromadnou aktualizaci atributů dokumentů bez nutnosti reindexace celé kolekce.

Krok za krokem

Krok 1: Přidání dokumentů do indexu

index.add("YOUR_DOCUMENT_DIRECTORY");

Krok 2: Získání informací o indexovaném dokumentu

import com.groupdocs.search.results.DocumentInfo;

DocumentInfo[] documents = index.getIndexedDocuments();

Krok 3: Hromadná aktualizace atributů dokumentu

import com.groupdocs.search.common.AttributeChangeBatch;
import com.groupdocs.search.SearchOptions;

AttributeChangeBatch batch = new AttributeChangeBatch();
batch.addToAll("public"); // Add 'public' to all documents
batch.remove(documents[0].getFilePath(), "public"); // Remove 'public' from a specific document
batch.add(documents[0].getFilePath(), "main", "key"); // Add 'main' and 'key' attributes

// Apply changes
index.changeAttributes(batch);

Krok 4: Vyhledávání s filtry atributů

import com.groupdocs.search.results.SearchResult;

SearchOptions options = new SearchOptions();
options.setSearchDocumentFilter(SearchDocumentFilter.createAttribute("main"));
String query = "length";
SearchResult result = index.search(query, options); // Perform the search

Hromadná aktualizace atributů dokumentů pomocí AttributeChangeBatch

Třída AttributeChangeBatch je hlavním nástrojem pro hromadnou aktualizaci atributů dokumentů. Skupinováním změn do jednoho batchu snižujete zátěž I/O a udržujete index konzistentní.

Jak přidat atributy během indexace

Search by Attribute Java – přidávání atributů během indexace

Napojte se na událost FileIndexing, abyste při přidávání každého souboru do indexu přiřadili vlastní atributy.

Krok za krokem

Krok 1: Přihlášení k události FileIndexing

import com.groupdocs.search.events.EventHandler;
import com.groupdocs.search.events.FileIndexingEventArgs;

index.getEvents().FileIndexing.add(new EventHandler<FileIndexingEventArgs>() {
    @Override
    public void invoke(Object sender, FileIndexingEventArgs args) {
        if (args.getDocumentFullPath().endsWith("Lorem ipsum.pdf")) {
            args.setAttributes(new String[] { "main", "key" });
        }
    }
});

Krok 2: Indexování dokumentů

index.add("YOUR_DOCUMENT_DIRECTORY");

Praktické aplikace

  1. Systémy pro správu dokumentů – Automatizujte kategorizaci přidáváním metadat během ingestování.
  2. Velké archivy obsahu – Použijte filtry atributů k omezení vyhledávání, což výrazně zkrátí dobu odezvy.
  3. Soulad a reportování – Dynamicky označujte dokumenty pro plány uchovávání nebo auditní stopy.

Úvahy o výkonu

  • Správa paměti – Sledujte haldu JVM a podle potřeby upravujte -Xmx.
  • Dávkové zpracování – Skupinujte změny atributů pomocí AttributeChangeBatch, abyste minimalizovali zápisy do indexu.
  • Aktualizace knihovny – Udržujte GroupDocs.Search aktuální, abyste získali výkonnostní opravy.

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

ProblémProč se to staneJak opravit
Atributy nebyly aplikoványObsluha události nebyla zaregistrována před indexacíUjistěte se, že index.getEvents().FileIndexing.add(...) běží před index.add(...).
Vyhledávání nevrací žádné výsledkyNesoulad názvu atributu (rozlišuje velká/malá písmena)Používejte přesné názvy atributů při vytváření filtrů (createAttribute("main")).
Chyby out‑of‑memory při velkých dávkáchPříliš mnoho změn v jedné dávceRozdělte velké aktualizace na menší instance AttributeChangeBatch.
Licence nebyla rozpoznánaPoužíváte trial JAR bez aplikace licenčního souboruZavolejte License license = new License(); license.setLicense("path/to/license.file"); před jakoukoliv operací s indexem.

Často kladené otázky

Q: Jaké jsou předpoklady pro používání GroupDocs.Search v Javě?
A: Potřebujete Java 8+, knihovnu GroupDocs.Search a základní znalost konceptů indexování.

Q: Jak nainstaluji GroupDocs.Search pomocí Maven?
A: Přidejte úložiště a závislost uvedenou v sekci Nastavení Maven do vašeho pom.xml.

Q: Mohu měnit atributy po indexaci dokumentů?
A: Ano, použijte AttributeChangeBatch pro hromadnou aktualizaci atributů dokumentů bez reindexace.

Q: Co když je můj proces indexace pomalý?
A: Optimalizujte nastavení paměti JVM, používejte dávkové aktualizace a ujistěte se, že používáte nejnovější verzi knihovny.

Q: Kde najdu další zdroje o GroupDocs.Search pro Javu?
A: Navštivte oficiální dokumentaci nebo prozkoumejte komunitní fóra.

Zdroje


Poslední aktualizace: 2026-02-24
Testováno s: GroupDocs.Search 25.4 for Java
Autor: GroupDocs