Lunece全文检索搜索引擎

BooleanClause用于表示布尔查询子句关系的类,

包 括:BooleanClause.Occur.MUST,BooleanClause.Occur.MUST_NOT,BooleanClause.Occur.SHOULD。

必须包含,不能包含,可以包含三种.有以下6种组合:

a.MUST和MUST:取得连个查询子句的交集。

b.MUST和MUST_NOT:表示查询结果中不能包含MUST_NOT所对应得查询子句的检索结果。

c.SHOULD与MUST_NOT:连用时,功能同MUST和MUST_NOT。

d.SHOULD与MUST连用时,结果为MUST子句的检索结果,但是SHOULD可影响排序。

e.SHOULD与SHOULD:表示“或”关系,最终检索结果为所有检索子句的并集。

f.MUST_NOT和MUST_NOT:无意义,检索无结果。

)

四,主要步骤(直接上代码)

public static final String QUERY_FIELD1 = NAMES;//设置域

/**

* 对应数组

*/

//域查询对应数组(BooleanClause.Occur.SHOULD对应参数)

public static final BooleanClause.Occur[] QUERY_FLAGSFOUR1 = {BooleanClause.Occur.SHOULD};

// 创建索引

//org.apache.lucene.document.Document (这个包)

1,创建索引

String path = “/LuneceProject/WebContent/WEB-INF/lunece/news.txt”;//索引存放目录,可以自己设置内容

Directory directory = new SimpleFSDirectory(new File(path));//创建目录

boolean exist = IndexReader.indexExists(directory);//检测目录是否存在

IndexWriter writer = new IndexWriter(directory, new StandardAnalyzer(

Version.LUCENE_30), !exist, IndexWriter.MaxFieldLength.LIMITED);

if (exist) {

File file = new File(path);

if (file.exists()) {

// 文件删除

file.delete();

}

Document doc=Document();//创建文档对象

//contenxt是一个对象,Name添加到域

doc.add(new Field(NAMES,context.getName().toString(), Field.Store.YES,

Field.Index.NOT_ANALYZED));//是否分域查询,是否拆词

2,通过参数检索

3,通过BooleanQuery进行检索

4,接收检索结果

5,多参数检索通过域

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!**

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值