使用 GroupDocs.Search for Java 创建搜索索引 java

在本综合指南中,您将学习如何使用 GroupDocs.Search for Java create search index java 应用程序,并了解如何 highlight search results java,以便用户能够立即在 PDF、Office 文件、HTML 页面等中发现匹配项。无论您是构建轻量级桌面工具还是高吞吐量的企业搜索服务,下面的步骤都涵盖了从多格式索引到性能微调以及运行 Java 布尔查询示例的全部内容。

快速概览

  • 索引多种文档类型 – PDFs、DOCX、PPTX、XLSX、HTML,以及 150 多种其他格式。
  • 运行高级查询 – 布尔、模糊、通配符、短语、正则表达式和分面搜索。
  • 利用语言处理 – 同义词、拼写检查、同音词检测和自定义词典。
  • 集成 OCR – 从扫描图像中提取文本并将其添加到可搜索索引中。
  • 优化性能 – 控制内存使用、索引大小以及查询响应时间,适用于达到多千兆字节规模的索引。
  • 突出显示结果 – 在原始文档或 HTML 预览中直接显示匹配项,可自定义颜色和 CSS 类。

下面是一系列精选教程,逐步引导您了解每项功能。

快速答案

  • “highlight search results java” 是做什么的? 它在原始文档或生成的 HTML 预览中直观地标记匹配的词汇,让用户立即定位相关片段。
  • 哪个库提供 faceted search java? GroupDocs.Search for Java 包含内置的分面搜索支持,可按元数据字段对结果进行分组。
  • 我可以使用相同的 API 实现 OCR java 吗? 可以——只需使用单个 OcrOptions 设置启用 OCR 引擎,相同的索引工作流即可从图像中提取文本。
  • 生产使用需要许可证吗? 试用期结束后需要商业许可证。
  • API 是否兼容 Java 17 及更高版本? 它完全支持 Java 8+,已在 Java 17 上测试,并可在任何兼容 JVM 的平台上运行。

什么是 “highlight search results java”?

在 Java 中突出显示搜索结果意味着以编程方式应用视觉提示——例如背景颜色或粗体样式——到与用户查询匹配的确切单词或短语。 该技术缩短了用户浏览长文档的时间,并提升了整体搜索可用性。

为什么使用 GroupDocs.Search for Java?

GroupDocs.Search for Java 能在标准 8 核服务器上于两秒内对数千个文档进行索引和查询。 它支持 150 多种文件格式,能够在不将整个集合加载到内存的情况下处理多千兆字节的索引,并提供开箱即用的 OCR、分面搜索和同义词处理——全部通过流畅、文档完善的 API 实现。

前置条件

  • Java 8 或更高版本(推荐使用 Java 17)
  • 用于依赖管理的 Maven 或 Gradle
  • 有效的 GroupDocs.Search for Java 许可证(提供试用版)

步骤指南

步骤 1:设置项目

创建一个 Maven 或 Gradle 项目并添加 GroupDocs.Search 依赖。将许可证文件 (GroupDocs.Search.lic) 放置在 src/main/resources 文件夹中,以便 SDK 自动加载。

步骤 2:创建索引

Index 是表示磁盘上可搜索仓库的核心类。

Index index = new Index("path/to/index/folder");

实例化 Index 后,调用 add 为每个希望可搜索的文档添加。SDK 会自动检测文件类型并提取文本。

步骤 3:启用 OCR(实现 OCR java)

OcrOptions 配置内置的 OCR 引擎。

OcrOptions ocr = new OcrOptions();
ocr.setLanguage("eng");
ocr.setDpi(300);

将 OcrOptions 实例附加到索引调用中,以便将扫描图像转换为可搜索文本。

步骤 4:执行搜索查询

SearchOptions 构建发送到索引的查询。

SearchOptions options = new SearchOptions()
    .setQuery("invoice")
    .setBooleanOperator(BooleanOperator.AND)
    .setFuzzy(true);

您可以将 Java boolean query example 与分面过滤器、通配符或正则表达式模式结合,以进一步缩小结果范围。

步骤 5:突出显示搜索结果 java

Highlight 是一个实用类,用于生成匹配文档的高亮版本。

HighlightOptions highlight = new HighlightOptions()
    .setColor(Color.YELLOW)
    .setCssClass("search-highlight");
HighlightResult result = Highlight.apply(searchResult, highlight);

API 返回修改后的 PDF 文件或 HTML 片段,其中每个匹配的词汇都被包装上所选的样式。

步骤 6:审查与优化

使用内置的统计 API 监控索引大小、内存消耗和查询延迟。调整 maxMemoryUsage 或启用压缩 (setCompression(true)) 以在处理数百万记录时保持索引精简。

常见问题及解决方案

  • 未出现高亮:确认您传递了带有受支持输出格式(HTML 或 PDF)的 HighlightOptions 对象。
  • OCR 漏检文本:确保已安装语言包,并且源图像符合最低 300 dpi 的推荐。
  • 分面搜索返回空桶:确认在步骤 2 中使用 Facet 类型对您希望分面的字段进行了索引。

常见问答

Q: 我可以将 faceted search java 与模糊匹配一起使用吗?
A: 可以——您可以在同一个 SearchOptions 构建器中链式调用分面过滤器和模糊查询,从而在容忍拼写错误的同时缩小结果范围。

Q: 高亮功能在加密的 PDF 上有效吗?
A: 仅在您在将文档添加到索引时提供正确密码时才有效;SDK 会解密、进行高亮,然后重新加密输出。

Q: 索引多大时性能会下降?
A: 该库可靠地处理多千兆字节的索引;启用压缩并调优 maxMemoryUsage 即使在 1000 万文档的情况下也能将查询时间保持在 200 ms 以下。

Q: 能否自定义高亮颜色?
A: 当然。使用 HighlightOptions.setColor(Color.YELLOW),或通过 setCssClass 为 HTML 输出提供自定义 CSS 类。

Q: 本指南使用的 GroupDocs.Search 版本是什么?
A: 示例已在 GroupDocs.Search for Java 23.9 上验证。

您可能感兴趣的相关主题

Java 文档搜索功能概览

GroupDocs.Search for Java 提供一套完整的功能,用于构建强大的搜索应用:

  • 多格式支持 – 150 多种输入和输出格式,包括 PDF、DOCX、PPT、XLS、HTML 和图像文件。
  • 高级搜索类型 – 布尔、模糊、通配符、短语、正则表达式和 faceted search java 选项。
  • 智能索引 – 快速、可配置的文档索引,支持可选压缩。
  • 语言处理 – 同义词检测、拼写检查和同音词识别。
  • OCR 支持 – 从图像和扫描文档中提取并搜索文本(implement OCR java)。
  • 性能优化 – 可调节的内存使用和查询速度,适用于多千兆字节的索引。
  • 结果高亮 – 在原始文档中可视化突出显示搜索匹配(highlight search results java)。
  • 词典支持 – 为专业术语和领域提供自定义词典。
  • 分布式搜索 – 使用网络功能构建可扩展、分片的搜索解决方案。
  • 极速 – 在典型服务器上处理并搜索 10 000 个文档,耗时不足 2 秒。

学习资源


最后更新: 2026-08-26
测试版本: GroupDocs.Search for Java 23.9
作者: GroupDocs