传智播客JAVA培训2010-4-29Lucene总结
来源:互联网 发布:网络安全法 实名认证 编辑:程序博客网 时间:2024/05/22 11:47
传智播客JAVA培训2010-4-29Lucene总结
今天心情不错,北京的天终于露出了太阳那花儿一般的脸蛋儿,心情也不由因此而生出喜悦,人总是会受环境的影响,下午回来新闻中我看到广东那边发生的事,我心情说不出来的沉重,为什么这些人不好好珍惜生活呢?为什么要拿那些无辜的小孩子出气,唉!
生活依然要继续,学习依旧要继续,就像每天都要到租房外面的小店打白米饭了,虽然味道不是很好,但却是不可缺少的一部分,生活本来就如此,我寝室的哥们天天都吃白馒头,我就不清楚了,哥们,你为什么就那么喜欢吃那馒头,哥们却说,我吃米饭吃了肚子痛,真是笑悼了大牙了,他一天三顿,顿顿吃馒头。就像我一天要吃三次白米饭一样,不管我怎么努力的想去吃几个馒头,但我发现,我改变不了,我多年来形成的习惯,还是米饭好,哥们认为馒头好,谁也改变不了谁。
汤阳光老师,我只能说是人如其名,真的是很阳光的一名老师。从他的样子来推断的话,他绝对是我们学校最年轻的一位老师,和我们班的同学差不多大,人如其名,阳光洒脱,声音却非常有磁性,如果是女生,可以很快就被他的声音迷住了。Lucene,全文搜索引擎,我一遍又一遍的也在搜索,总结今天所学的知识点:
1.使用Lucene就是要实现站内搜索,常用的方式就是从数据库中根据输入内容进行搜索,但是这样的速度是非常的慢的。但是通过Lucene就可以从索引库中快速的检索相关的,最主要的就是符合用户要求的数据。
2.我们的工作就是作用操作Lucene 提供的API操作索引库中的数据,以及维护其中的数据。
索引库管理,使用IndexWriter。用他可以在索引库中增加、删除、更新索引数据,对应的方法为:addDocument()、deleteDocuments()、updateDocument()。也可以进行索引库的一些其他有关的修改与优化的操作。
在索引库中搜索,使用IndexSearcher。对应的方法为search()。
概念:
1.Directory 索引库。所有的数据也是以文件的形式存在索引库中,其实索引库也就是一个文件夹,其中储了许许多多的数据。我们不用直接去改文件中的数据,是通过和依赖于Lucene提供的API,就像我们使用SQL语句去操作数据库一样。
创建语句:Directory d = FSDirectory.open(new File("./"));
2.Analyzer(分析) (分析器),我对分析器的理解不是很好。在创建、修改、删除、查询时都要用到,特别是在一个项目中,你采用什么样的分析进行添加Document就要采用同样的分析器进行其它的操作。引用一段一牛人的话:analyzer主要包含分词器跟过滤器,他的功能就是:将分词器跟分析器进行合理的组合,使之产生对文本分词和过滤效果。因此,分析器使用分词和过滤器构成一个管道,文本在“滤过”这个管道之后,就成为可以进入索引的最小单位。
3.Document
Lucene在存储数据时,不能直接储对象,而是需要将我们在JAVA中的对象转换成DOCUMENT的对象,然后再进行存储。相互转换的代码如下:
Document document = new Document();
document.add(new Field("id",article.getId().toString(),Store.YES,Index.NOT_ANALYZED));
Article article = new Article()
Index.NOT_ANALYZED 该字符不进行拆分
以下代码是从Document对象中的值取出来封装到JAVA对象中
Integer id = Integer.parseInt(document.get("id"));
article.setId(id);
4.IndexWriter
5.QueryParse
6.Query
7.TopDocs
8.ScoreDoc
9.IndexSeacher
看到网上的牛人写的关于LUCENE的博客,体会到自己现在掌握的知识仅仅只是会使用来做一些简单的操作,距离深入理解还差得太远。但是对于今天一天的学习效果,自我感觉还是不错。
- 传智播客JAVA培训2010-4-29Lucene总结
- 传智播客JAVA培训2010-4-26SVN/CVS总结
- 传智播客JAVA培训2010-4-30LuceneCompass总结
- 传智播客JAVA培训2010-5-4JBPM总结.
- 传智播客java培训2010年4月16日JAVA高新技术总结(1)
- 传智播客java培训2010年4月18java高新技术3,张孝祥老师视频自学总结
- 传智播客JAVA培训2010-5-5JBPM总结.
- 传智播客JAVA培训2010-5-8OA第二天总结
- 传智播客JAVA培训2010-5-21EMS项目总结1
- 传智播客java培训2010年4月9日struts总结1
- 传智播客java培训2010年4月10日ajax增强总结1
- 传智播客java培训2010年4月11日ajax增强总结
- 传智播客java培训2010年4月13日JQUERY总结
- 传智播客java培训2010年4月15日JQuery总结2
- 传智播客java培训2010年4月19日ORACLE总结(2)
- 传智播客java培训ORACLE总结(3)
- 传智播客JAVA培训OA视频回顾总结
- 传智播客JAVA培训spring学习总结(2010520)
- 说说大型高并发高负载网站的系统架构
- 高负载、高并发网站架构知识汇总-大型互联网网站架构
- 下猛药
- 为什么要学习.NET
- on e-books download..in permanent beta
- 传智播客JAVA培训2010-4-29Lucene总结
- 虽然无钱万万不能,但是亲情更好贵,请珍惜
- C++基础——变量命名习惯
- 2010-4-29 23:49
- 从J2EE转向Android的第八天-----Toast
- 世界上最牛的演讲
- Android高手进阶教程(八)之----Android Widget开发案例(世界杯倒计时!)
- GridView 遍历每一行,两种写法
- 从今天开始写技术博客