Lucene学习札记2--建立和数据库对应的索引
发布时间:2010-05-20 14:01:29 文章来源:www.iduyao.cn 采编人员:星星草
Lucene学习笔记2--建立和数据库对应的索引
比如将数据的数据生成索引文件,查询出来的数据以list返回,则
1、定义分词器,lucene自带的分词器为标准分词器,StandardAnalyzer,
但我们这里要讲的是中文分词器--IK_CAnalyzer ikAnalyzer = new IK_CAnalyzer();
/* 创建索引初始化,执行这些语句将创建或清空c:index目录下所有索引 */
File file = new File(path);
if (file.isDirectory()) {
file.delete();
}
//中文分词器
IK_CAnalyzer ikAnalyzer = new IK_CAnalyzer();
IndexWriter writer1 = new IndexWriter(path, ikAnalyzer, true);
writer1.close();
IndexWriter writer2 = new IndexWriter(path, ikAnalyzer, false);
//这里的false表示在新建索引文件时要删除旧的索引文件,true表在旧的索引文件中追加新的索引记录
for (int i = 0; i < list.size(); i++) {
Document doc = new Document();
//这里的field代表数据库中某个表的列
Field field1 = new Field(ArticleTitle, "这里录入列对应的值",Field.Store.YES, Field.Index.TOKENIZED);
doc.add(field1);
Field field2 = new Field(ArticleText,"这里录入列对应的值", Field.Store.YES,Field.Index.TOKENIZED);
doc.add(field2);
Field field3 = new Field(ArticleTime,"这里录入列对应的值" , Field.Store.YES,Field.Index.TOKENIZED);
doc.add(field3);
..........
// 在这里还可以添加其他域
/* 添加这份文件到索引 */
writer2.addDocument(doc);
}
说明:
/*
* 创建一个域ArticleTitle,并往这个域里面添加内容 "Field.Store.YES"表示域里面的内容将被存储到索引
* "Field.Index.TOKENIZED"表示域里面的内容将被索引,以便用来搜索 Lucene给文档的字段设定三个布尔变量:
* 索引(indexed), 存储(stored), 切词(tokenized) ,
*/
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
如何将从数据库查找出的对相(集合)转化成转化成属性的形式。
如何转化成**
解决方案:重写toString()这个方法,但是首先要...
-
多部件上传excel文档,解析后存入mysql数据库
说明:此处使用的是java的ssm框架
jsp的界面
...
-
oracle怎样创建表空间和用户
1)创建表空间。在sql窗口中输入create tablespace test datafile 'D:test.ora' size 1000m;这...
-
创建函数例子
创建mysql的函数的例子
BEGIN
declare current_sequence bigint;
select sequence into current_sequence...
-
怎样利用JDBC连接并操作Oracle数据库
怎样利用JDBC连接并操作Oracle数据库
...
-
Hadoop 50070端口打不开怎么办?hadoop课程
Hadoop 50070是hdfs的web管理页面,在搭建Hadoop集群环境时,有些大数据开发技术人员...
-
Oracle的连接详解(左连接、右连接、全连接...)
https://www.cnblogs.com/guogl/articles/5929852.html
1 说明:
提到数据...
-
再谈全局网HBase八大应用场景
摘要: HBase可以说是一个数据库,也可以说是一个存储。拥有双重属性的HBase天生就具备广阔的...
-
Oracle 中分组后,如何拼接字符串
Oracle在版本11g提供的listagg函数之前,如果要对字符串的字段进行聚合即拼接字段内容的话,有...
-
Druid 是 Java 的数据库连接池组件。Druid 能够提供强大的监控和扩展功能。比如可以监控 SQL ,在监控业务可以查询慢查询 SQL 列表...