https://purchase.groupdocs.com/temporary-license/) => translate.

Next line: “—” keep.

Then “Last Updated: 2026-03-17” => translate “最后更新:” maybe keep bold.

Tested With: GroupDocs.Search Java 25.4” => translate.

Author: GroupDocs” => translate.

Now produce final markdown.

Be careful to preserve code block placeholders as separate lines? In original they were placed alone lines. We’ll keep same.

Also ensure no extra spaces.

Let’s craft final output.# 如何使用 GroupDocs.Search 在 Java 中通过元数据索引将文档添加到索引

快速且可靠地将文档添加到索引是任何现代搜索驱动应用的基石。无论您是在构建法律仓库、客户支持知识库,还是内部文档门户,metadata indexing 让您能够通过元数据搜索文档,如作者、标题或自定义标签。在本教程中,您将学习如何配置索引设置、创建以元数据为中心的索引、添加文件以及执行精确搜索——全部使用 GroupDocs.Search for Java。

快速答案

  • metadata indexing 的主要目的是什么? 它能够基于文档属性而非全文内容进行快速搜索。
  • 哪个方法将文件添加到索引? index.add(YOUR_DOCUMENTS_FOLDER);
  • 我可以通过自定义元数据字段搜索吗? 可以,一旦字段被索引,您可以直接查询它们。
  • 开发是否需要许可证? 临时试用许可证足以进行评估;生产环境需要完整许可证。
  • 需要哪个 Java 版本? 推荐使用 JDK 8 或更高版本。

GroupDocs.Search 中的 metadata indexing 是什么?

metadata indexing 会提取并存储文档属性(例如作者、创建日期、自定义标签),并将其放入可搜索的结构中。当您add documents to index时,引擎会记录这些属性,使您能够执行精确查询,例如“查找所有由 John Doe 编写的 PDF”或“search pdf by author”。

为什么在 metadata indexing 中使用 GroupDocs.Search?

  • Performance: 元数据搜索轻量级,能够在毫秒级返回结果。
  • Flexibility: 支持多种文件格式(PDF、DOCX、PPT 等)。
  • Scalability: 能以最小的内存占用处理数百万文档。

前置条件

  • GroupDocs.Search for Java ≥ 25.4。
  • 已安装并配置 JDK 8 或更高版本。
  • 对 Java 和 Maven 有基本了解。

设置 GroupDocs.Search for Java

安装说明

将 GroupDocs 仓库和依赖添加到您的 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>

您也可以直接从 GroupDocs.Search for Java releases 下载最新二进制文件。

获取许可证

获取临时许可证用于测试:

  1. 访问 GroupDocs 网站并前往 Purchase 部分。
  2. 选择符合您评估需求的 temporary license 方案。

步骤实现

功能 1:索引设置配置

配置索引以聚焦元数据:

import com.groupdocs.search.IndexSettings;
import com.groupdocs.search.IndexType;

// Initialize index settings
IndexSettings settings = new IndexSettings();
settings.setIndexType(IndexType.MetadataIndex);  // Focus on metadata indexing
  • setIndexType(IndexType.MetadataIndex) 告诉引擎优先处理元数据而非全文内容。

功能 2:在指定文件夹中创建索引

创建一个物理索引目录,用于存放所有元数据:

import com.groupdocs.search.Index;

String YOUR_INDEX_DIRECTORY = "YOUR_DOCUMENT_DIRECTORY\\\\output\\\\AdvancedUsage\\\\Indexing\\\\IndexingMetadataOfDocuments";

// Create index in specified directory using settings
Index index = new Index(YOUR_INDEX_DIRECTORY, settings);

YOUR_DOCUMENT_DIRECTORY 替换为符合您项目布局的路径。

功能 3:如何将文档添加到索引

索引已创建后,您可以add documents to index,使其可被搜索:

String YOUR_DOCUMENTS_FOLDER = "YOUR_DOCUMENT_DIRECTORY";

// Add all documents in directory to the index
index.add(YOUR_DOCUMENTS_FOLDER);

Tips:

  • 确认文件夹路径正确且应用具有读取权限。
  • GroupDocs.Search 会自动从每个文件中提取受支持的元数据。

功能 4:通过元数据搜索文档

运行针对元数据字段的查询,例如搜索语言为英文的文档:

import com.groupdocs.search.results.SearchResult;

String query = "English";  // Define search query
SearchResult result = index.search(query);  // Perform the search

// Process results (example)
for (int i = 0; i < result.getDocumentCount(); i++) {
    System.out.println("Found document: " + result.getFoundDocument(i).getFilePath());
}
  • search(query) 会在已索引的元数据中查找并返回匹配的文档。
  • 您也可以通过使用作者姓名作为查询字符串来search pdf by author

实际应用

  1. Enterprise Document Management: 按合同日期或签署人姓名检索合同。
  2. Digital Library Catalogs: 让用户按类别、出版年份或作者浏览图书。
  3. CRM Systems: 使用客户 ID、地区等自定义元数据快速定位客户文件。

提示与最佳实践

  • Incremental Updates: 使用 index.addOrUpdate() 为新文件或已更改文件增量更新,而不是重新构建整个索引。
  • Batch Processing: 处理成千上万的文件时,分批添加以保持低内存使用。
  • Metadata Validation: 确保源文档实际包含您计划查询的元数据(例如 PDF 中的作者字段)。

性能考虑

  • Memory Tuning: 根据已索引元数据的量调整 JVM 堆大小(-Xmx)。
  • Optimized Storage: 定期调用 index.optimize() 以压缩索引并提升查询速度。

常见问题及解决方案

问题解决方案
No results returned确认您期望的元数据字段实际存在于源文件中。
Permission errors确保 Java 进程对文档文件夹和索引目录都有读取权限。
Out‑of‑memory errors增加 JVM 堆大小或将 add 操作分批处理,以更小的文件组进行。

常见问答

Q: 什么是 metadata indexing?
A: metadata indexing 将文档属性(作者、标题、自定义标签)存储在可搜索的结构中,实现无需扫描全文的快速查找。

Q: 如何获取临时许可证?
A: 访问 GroupDocs 购买页面并按照步骤获取试用许可证。

Q: 可以使用此设置索引 PDF 吗?
A: 可以,GroupDocs.Search 支持 PDF、DOCX、PPT 等多种格式。

Q: 添加文档时常见的问题有哪些?
A: 核实文件路径是否正确,并确保应用对相应目录具有读取权限。

Q: 如何优化搜索性能?
A: 定期更新索引,使用增量添加,并调优 JVM 内存设置。

资源


Last Updated: 2026-03-17
Tested With: GroupDocs.Search Java 25.4
Author: GroupDocs