hibernate3.2以后,好像对lucene集成这一块多了一个项目hibernate-search,现有网上中文的配置,与这个有点出入。
现将我的配置过程记录如下:
spring中配置:
在sessionFactory的配置中加上
<property name="configurationClass" value="org.hibernate.cfg.AnnotationConfiguration"/>
<property name="configLocation" value="classpath:config/hibernate.cfg.xml"/>
hibernate.cfg.xml配置:
<hibernate-configuration>
<session-factory name="sessionFactory">
<property name="hibernate.search.default.indexBase">/home/steven/workspace/syn-webshop/indexDir</property><!--索引存放的路径-->
<property name="hibernate.search.default.directory_provider">org.hibernate.search.store.FSDirectoryProvider</property>
<event type="post-update"><listener class="com.synjones.webshop.event.ProductLuceneEventListener"/></event>
<event type="post-insert"><listener class="com.synjones.webshop.event.ProductLuceneEventListener"/></event>
<event type="post-delete"><listener class="com.synjones.webshop.event.ProductLuceneEventListener"/></event>
</session-factory>
</hibernate-configuration>
在domain的类前,
@Indexed(Index/Products)
主键加上
@DocumentId
需要索引的字段前加@Field(index=Index.TOKENIZED, store=Store.NO)
hibernate通过上面定义的listener,当要被索引的字段增删改的时候,会相应创建删除索引,有的时候,你可能不会真的删除数据库的数据,而是做了一个删除的标记,这个时候,需要重载一下定义的listener,注意,重载只有在3.0.1GA以上版本才行,因为这个版本的里面的一些方法的字段是private,在3.0.1.GA后是protected
或者自己实现PostUpdateEventListener, Initializable,接口,在配置的时候,写上自己的listener就行.
分享到:
相关推荐
Hibernate 与 Lucene 的整合框架
lucene3.5 IKAnalyzer3.2.5 实例中文分词通过,目前在网上找的lucene 和IKAnalyzer 的最新版本测试通过。内含:示例代码,以及最新jar包。 lucene lucene3.5 IKAnalyzer IKAnalyzer3.2.5 jar 中文 分词
搜索引擎Lucene结合Hibernate的例子,带有所有的LIB!
springMVC集成lucene完整代码
前一段时间在弄检索,在网上一看做SSH和lucene的很少就自己做了一个,完全能够跑通,有些代码是在网上拷贝的谢谢原作者。
基于lucene的开发JavaEE项目 基于lucene的开发JavaEE项目 基于lucene的开发JavaEE项目 基于lucene的开发JavaEE项目 基于lucene的开发JavaEE项目
Struts+Hibernate+spring+jpa+lucene+jbpm+compass配置文件
1,功能强大,配置简单 - 配置只需要修改persistence.xml(JPA),hibernate.cfg.xml(Hibernate)2,支持Hibernate,以及EJB3 JPA标准应用3,集成全文搜索引擎Lucene - Lucene是Apache项目组下的一个功能强大的全文...
Lucene在web项目中的应用,孔浩老师讲的,从建立索引-搜索-分词,到在留言项目中的应用,适合搜索初学者代码练习...
Struts2.3+spring4+hibernate4+Lucene4.7+IKAnalyzer,中文分词,高亮显示,附带MySQL8000条测试数据。仅供学习参考
对学习lucene开发的人员来说这个项目非常有价值 值得参考">项目的页面都存在WebRoot WEB INF jsp下 网上搜索博客园网页的地址 输入到相应搜索框 该项目可以自动对博客园网站中的文章 项目中限制了文章数量 建立...
Lucene从问世之后,引发了开放源代码社群的巨大反响,程序员们不仅使用它构建具体的全文检索应用,而且将之集成到各种系统软件中去,以及构建Web应用,甚至某些商业软件也采用了Lucene作为其内部全文检索子系统的...
ssm+lucene
lucene.NET 中文分词 高亮 lucene.NET 中文分词 高亮 lucene.NET 中文分词 高亮 lucene.NET 中文分词 高亮
lucene 华电项目 源码
lucene搜索引擎配置,从载入文件,建立索引,搜索三步让你知道lucene搜索的核心技术
别看分多,真正的实用程序,让你一下对lucene的项目源码,让你用lucene做引擎更容易
Lucene是一个开放源代码的...Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。 这篇文档是lucene部署配置和运行测试。
lucene项目,首先要准备查询的数据放到相关路径下(在Constant类中是设置路径的地方)。 LuceneIndex是创建索引; LuceneSearch是查询; TokenTest是分词; MoreLikeTest是查找相似文章
Lucene与关系型数据库对比,很不错。。。。。。