索引库的维护
索引库的添加
Field域的属性
是否分析:是否对域的内容进行分词处理。前提是我们要对域的内容进行查询。
是否索引:将Field分析后的词或整个Field值进行索引,只有索引方可搜索到。
比如:商品名称、商品简介分析后进行索引,订单号、身份证号不用分析但也要索引,这些将来都要作为查询条件。
是否存储:将Field值存储在文档中,存储在文档中的Field才可以从Document中获取
比如:商品名称、订单号,凡是将来要从Document中获取的Field都要存储。
代码实现
@Test
public void addDocument() throws Exception{
//创建一个IndexWriter对象 需要使用IKAnalyzer作为分析器
IndexWriter indexWriter=new IndexWriter(FSDirectory.open(new File("E:\\Download\\index").toPath()),
new IndexWriterConfig(new IKAnalyzer()));
//创建一个Document对象
Document document=new Document();
//向Document对象中添加域
document.add(new TextField("name","新添加的文件", Field.Store.YES));
document.add(new TextField("content","新添加的文件内容", Field.Store.NO));
document.add(new StoredField("path","E:/temp/hello"));
//把文档写入索引库
indexWriter.addDocument(document);

本文介绍了Lucene索引库的维护方法,包括索引的添加、删除、修改及查询等核心操作。详细讲解了Field域的属性设置,并提供了具体的Java代码示例。
最低0.47元/天 解锁文章
701

被折叠的 条评论
为什么被折叠?



