Hibernate Search 3.3第一个beta版本-Hibernate Search 3.3 Beta1下载地址发布了,关注Hibernate Search的朋友可以去官方获取最新的Hibernate Search 3.3 Beta1下载地 址下载试用。本次发布的Hibernate Search 3.3 Beta1最大的特性就是引入了Hibernate Search query DSL,要知道编写Lucene查询并不是一件容易的事情,尤其是当lucene检索建立在面向对象的Hibernate之上的时候,改问题更加明显。由 于Hibernate Search query DSL的引入,Hibernate隐藏了创建索引和查询过程中将对象于索引、查询字符串的转换的细节(类似Hibernate的 ResultTransformer),让用户可以使用Hibernate风格进行Lucene检索。同时Hibernate Search 3.3 Beta1也增加了与最新的Hibernate 3.6的兼容,同时修正了大量bug。喜欢尝鲜的朋友可以尝试将Hibernate Search 3.3 Beta1于Hibernate 3.6一起使用了。 简单介绍下Hibernate和Hibernate Search的关系,算是扫盲了。Hibernate是目前Java开 源世界最流行的 ORM框架之一。目前比较火的组合SSH(Struts + Spring + Hibernate)已经被广泛使用。Hibernate的优势是开发效率,这也是ORM工具的共通点。使用Hibernate能大幅度提高开发者的开发 效率,同时能更好的在程序中实现OO的思想。可以说以Hibernate为代表的ORM工具,是在面向对象的数据库普及之前最好的一个选择。但使用 Hibernate同时也会面临一定的问题,当遇到大字段需要模糊匹配检索的时候,SQL语句的like变得力不从心,效率的大幅度下降是不可避免的。于 是Hibernate 携手Java社区最流行的全文检索工具Lucene,推出了Hibernate Search,用于提供那些使用 Hibernate的开发者一个无缝的链接Hibernate与Lucene的平台。 Hibernate Search的作用是对数据库中的数据进行检索,无论是小型字段还是大型字段,Hibernate Search都可以进行索引并检索,只是全文检索在大字段的检索时会体现出明显的优势。Hibernate Search可以将数据库中的大字段(例如声明为text的字段)建立全文索引,之后可以通过Hibernate Search对这些字段进行全文检索。区别与传统Lucene的解决方案的是Hibernate Search返回的结果集已经被Hibernate Search封装成为Hibernate 管理的POJO,这样开发者可以在使用Hibernate的同时无缝集成Lucene索引,同时享受Lucene索引的高效以及Hibernate带来的 OO特性。 Hibernate Search 3.3 Beta1下载地址:
Hibernate Search 3.3 Beta1中使用Hibernate Search query DSL例子:
|