Hibernate Search項目的Beta第二版剛剛發(fā)布。InfoQ為此采訪(fǎng)了Hibernate Search項目的發(fā)起人Emmanuel Bernard以了解更多細節,Emmanuel同時(shí)也是相關(guān)項目Hibernate Annotations和Hibernate EntityManager的發(fā)起人。根據Emmanuel所言,Hibernate Search目的是幫助Hibernate的使用者或是Java Persistence API(JPA)的使用者可以通過(guò)全文搜索索引來(lái)訪(fǎng)問(wèn)Hibernate或JPA管理的對象。Hibernate Search項目的主要特性包含以下幾個(gè)方面:
Lucene集成——作為強大高效的檢索引擎,Lucene的美名早已久經(jīng)考驗了;
數據的自動(dòng)插入和更新——當一個(gè)對象通過(guò)Hibernate添加或更新時(shí),索引也會(huì )相應進(jìn)行透明的更新;
支持眾多復雜的搜索方式——可快速的使用通配符進(jìn)行搜索,以及多關(guān)鍵詞全文檢索(multi-word text searches)和近似或同義詞搜索(approximation/synonym searches),或根據相關(guān)性排列搜索結果;
搜索集群(Search Clustering)——Hibernate Search提供了內建搜索集群解決方案,其中包括一個(gè)基于JMS的異步查詢(xún)和索引系統;
對Lucene API接口的直接調用——如果用戶(hù)打算處理某些特別復雜的問(wèn)題,可以在查詢(xún)中直接使用Lucene提供的API接口;
對Lucene的自動(dòng)管理——Hibernate Search可以管理并優(yōu)化Lucene的索引,并且非常高效地使用Lucene的API接口。
項目的主要目標包含以下幾個(gè)方面:
易用性——和Hibernate的ORM映射一樣,Hibernate Search幫助用戶(hù)實(shí)現了業(yè)務(wù)90%的工作,并且使用戶(hù)專(zhuān)注于余下更為困難的業(yè)務(wù)實(shí)現部分;
和已有的Hibernate/JPA編程模型保持一致性——更輕松地集成Hibernate/JPA編程模型是“一開(kāi)始就致力要實(shí)現的目標”。
聯(lián)系客服