读书人

日期范畴查询之hibernate search Date

发布时间: 2012-12-25 16:18:28 作者: rapoo

日期范围查询之hibernate search DateBridge使用

hibernate search 使用串和数的索引和查询都比较简单,但使用日期类型建索引和查询就稍麻烦一点:

?

1 在日期属性上加入@DateBridge注解,如:

?

?使用resolution就可以将日期类型转换为string类型,再建索引,resolution可以有多种形式,见:http://docs.jboss.org/hibernate/stable/search/api/org/hibernate/search/bridge/builtin/DateBridge.html

?

2 建立索引后,进行查询,可以像上一篇《hibernate search和lucene结合使用实例》文章那样使用过滤器的方式,如直接加入检搜条件来搜索:

?

对上面的代码作一下说明:RangeQuery的第一个参数设定左边范围,即指定的field的下界是多少,若没有下界,那么这个参数就是null,而第二个参数是设定右边范围,即指定的field的上界是多少,没有上界,那么这个参数为null,第三个参数为边界值是否包括在内,true表示包括,false表示不包括。

?

我使用的是lucene2.4.1包,所以这里的查询方式如上面,lucene的版本更高,范围查询具体方式有所不同。范围查询具体见下一篇《lunce3.0范围查找TermRangeQuery》

?

读书人网 >编程

热点推荐