From 80c0cf6d467cac8f11ccf4b8e5138ac574ac9cfd Mon Sep 17 00:00:00 2001 From: gengby <858962040@qq.com> Date: Wed, 10 Jan 2024 12:31:57 +0800 Subject: [PATCH] =?UTF-8?q?rev:lucene=E8=B7=AF=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../config/lucene/service/impl/LuceneServiceImpl.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/service/impl/LuceneServiceImpl.java b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/service/impl/LuceneServiceImpl.java index 8a11d09..396718a 100644 --- a/acs/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/service/impl/LuceneServiceImpl.java +++ b/acs/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/service/impl/LuceneServiceImpl.java @@ -12,6 +12,9 @@ import org.apache.lucene.search.*; import org.apache.lucene.store.FSDirectory; import org.apache.lucene.util.BytesRef; import org.nl.config.lucene.service.LuceneService; +import org.springframework.beans.factory.config.YamlPropertiesFactoryBean; +import org.springframework.core.io.ClassPathResource; +import org.springframework.core.io.Resource; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; @@ -33,7 +36,13 @@ public class LuceneServiceImpl implements LuceneService { public Map getAll(Map whereJson, Pageable page) { //获取要查询的路径,也就是索引所在的位置 try { - FSDirectory directory = FSDirectory.open(Paths.get("C:\\acs\\lucene\\index")); + Resource resource = new ClassPathResource("config/application.yml"); + YamlPropertiesFactoryBean yamlPropertiesFactoryBean = new YamlPropertiesFactoryBean(); + yamlPropertiesFactoryBean.setResources(resource); + Properties properties = yamlPropertiesFactoryBean.getObject(); + // 获取配置值 + String luceneDir = properties.getProperty("lucene.index.path"); + FSDirectory directory = FSDirectory.open(Paths.get(luceneDir)); DirectoryReader open = DirectoryReader.open(directory); IndexSearcher searcher = new IndexSearcher(open); // 实际上Lucene本身不支持分页。因此我们需要自己进行逻辑分页。我们要准备分页参数: