java - 使用 lucene 进行全文搜索
问题描述
我最近一直在用 Jackrabbit Oak 开发一个 Java JCR 项目。
我正在尝试通过 lucene 索引实现全文搜索功能,但我遇到了问题。
这是我创建的 lucene 索引:
/oak:index/lucene
- jcr:primaryType = "oak:QueryIndexDefinition"
- type = "lucene"
- compatVersion = 2
- async = "async"
+ indexRules
- jcr:primaryType = "nt:unstructured"
+ nt:base
+ properties
- jcr:primaryType = "nt:unstructured"
+ jcr:content
- name = "jcr:content"
- type = "String"
- propertyIndex = false
- analyzed = true
这是我要搜索的节点
Node[NodeDelegate{tree=/home/test.txt: {
jcr:primaryType = nt:unstructured,
jcr:uuid = 1aa8c2a2-c06c-49f0-892d-96d40d78921b,
jcr:versionHistory = f1c33e1b-2d97-4e12-8fc0-cdb6881d08b8,
jcr:predecessors = [],
jcr:isCheckedOut = false,
jcr:mixinTypes = [mix:versionable],
jcr:baseVersion = 26d68547-e60a-44e5-a8e6-1aa04d1012d1,
jcr:content = {
jcr:primaryType = nt:resource,
jcr:uuid = fc2b91a3-9d6e-41a2-bc45-62945081c2db,
jcr:lastModifiedBy = admin,
jcr:data = {9 bytes},
jcr:mimeType = log,
cr:lastModified = 2021-03-09T14:33:41.933+01:00
}
}}]
文件 test.txt 的内容(jcr:data)为:
test test
这是我用于搜索的查询
SELECT * FROM [nt:base] AS node WHERE CONTAINS([nt:base], 'test')
但是,当我执行它时,我没有得到任何结果。
为什么?
解决方案
推荐阅读
- react-native - 当我有多个列入白名单的 reducer 时,如何使用 React Native Persist?
- apache-kafka - 如何使用不同的 __consumer_offsets 主题来存储偏移量?
- python - 获取 sqlAlchemy 字段名称
- github-pages - 无法在正确的地址发布我的 github 页面
- arrays - 从颤动的数组中获取特定元素的索引路径
- python - 直接从文件夹中读取数据以在 keras 中进行训练
- amazon-web-services - 无法通过 AWS EC2 实例连接 RDS MYSQL 数据库,但显示错误(mysql: command not found)Mysql 已安装在实例上
- html - 将 pandas 框架显示为 csv 文件中的 html
- python - 从两个用 Poetry 导出同名包的项目导入
- gitlab - “无法获得 ci/pipeline_processing/atomic_processing_service::pipeline_id 的独家租约”是什么意思?