浏览 2527 次
锁定老帖子 主题:lucene-索引日期与索引数字和排序
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-01-18
最后修改:2010-01-19
一、索引日期 1、Field.Keyword(String,Date)方法和DateField类进行索引 索引今天的日期可以这么做: Document doc=new Document(); doc.add(Field.Keyword("indexDate",new Date())); lucene内部使用了DateField类将日期转成字符串。 2、可以先转换为YYYYMMDD格式的字符串,再使用Fiedl.Keyword(String,String)方法。使用这种方式的另一个充分的理由是可以索引1970.1.1以前的日期。 3、字符串的排列是以字典顺序排列的。 二、索引数字 1、lucene通过在内部将数值处理为字符串的方式索引数值。如果需要索引的数字在自由形式文本出现,要选择支持数字的Analyzer类,可选择WhitespaceAnalyzer和StandardAnalyzer,能把数字提取为一个语汇单元并传递到索引中。 2、仅有单个数字值不要分析,可做为Keyword索引 3、lucene是按字典顺序排序,因此10,6,91为字典顺序,必须前补充0为:10,06,91,这样排序后为06,10,91 三、索引Field对象用于排序 1.如果希望能按某个域对象排序,它必须是一个被索引但不被语汇单元化的域对象增加到文档中. 2.域对象必须是可转换成整形、浮点型、字符串型。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |