基于lucene搜索引擎的Hibernate Search,官方文档翻译

由于自己的项目需要用到搜索引擎,于是想到使用lucene,封装了lucene的框架有compass,solr,hibernate search.

网上对这些框架的描述有:

  • Compass:是在Lucene的基础上做了封装,支持索引事务控制和增量索引,同时也能够和主流的SSH框架完美地整合在一起,操作Compass类似于操作Hibernate,它们的类/方法等设计的非常相似。

    项目主页:http://www.compass-project.org/

    该项目已经很久没有更新维护了,官方网站显示最后维护时间在2009-04-06

  • Solr:同样由Apache软件基金会提供和支持,基于Lucene的全文搜索服务器,采用Java5开发。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。

    Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果

    项目主页:http://lucene.apache.org/solr/

  • Hibernate Search:基于Lucene的基础上建立的主要用于Hibernate的持久化模型的全文检索工具。像Lucene这样的检索引擎能够给我们的项目在进行检索的时候带来非常高的效率,但是它们在基于对象的检索时会有一些问题,比如不能实现检索内容跟实体的转换,Hibernate Search正是在这样的情况下发展起来的,基于对象的检索引擎,能够很方便的将检索出来的内容转换为具体的POJO(实体对象)。此外Hibernate Search能够根据需要进行同步或异步的索引更新。

    项目主页:http://hibernate.org/subprojects/search.html


我的项目使用的开发语言是java,搭配ssh框架的j2ee应用。所以我选用hibernate search.方便快捷,开箱即用、

学习参考资料是通过官方的文档。

网上好像没有中文文档的翻译。找到了一个是3.3版本,别人翻译的。是从第4章开始翻译。

http://hpi-ls.blog.163.com/blog/static/2021474820101129105312604/?COLLCC=3931790462&COLLCC=4110777774&


还搜到一个http://wiki.redsaga.com,但是不知道为什么不能访问,翻墙了也不行

现在已经是到4.2 Final,所以我从第一章开始边学边翻译吧。第4章以后就参考上面那个兄弟翻译的,综合自己的吧。

接下来我会不定期的更新翻译的章节...

有朋友觉得翻译不妥,需要更改的地方可以给我留言、

Preface 1. Getting started
1.1. System Requirements 1.2. Using Maven
1.2.1. Using a Maven Archetype
1.3. Configuration 1.4. Indexing 1.5. Searching 1.6. Analyzer 1.7. What's next
2. Architecture
2.1. Overview 2.2. Back end
2.2.1. Lucene 2.2.2. JMS 2.2.3. JGroups
2.3. Reader strategy
2.3.1. shared 2.3.2. not-shared 2.3.3. Custom
3. Configuration
3.1. Enabling Hibernate Search and automatic indexing
3.1.1. Enabling Hibernate Search 3.1.2. Automatic indexing
3.2. Configuring the IndexManager
3.2.1. directory-based 3.2.2. near-real-time 3.2.3. Custom
3.3. Directory configuration
3.3.1. Infinispan Directory configuration
3.4. Worker configuration
3.4.1. JMS Master/Slave back end 3.4.2. JGroups Master/Slave back end
3.5. Reader strategy configuration 3.6. Tuning Lucene indexing performance
3.6.1. Control segment size
3.7. LockFactory configuration 3.8. Exception Handling Configuration 3.9. Index format compatibility
4. Mapping entities to the index structure
4.1. Mapping an entity
4.1.1. Basic mapping 4.1.2. Mapping properties multiple times 4.1.3. Embedded and associated objects
4.2. Boosting
4.2.1. Static index time boosting 4.2.2. Dynamic index time boosting
4.3. Analysis
4.3.1. Default analyzer and analyzer by class 4.3.2. Named analyzers 4.3.3. Dynamic analyzer selection 4.3.4. Retrieving an analyzer
4.4. Bridges
4.4.1. Built-in bridges 4.4.2. Tika bridge 4.4.3. Custom bridges
4.5. Conditional indexing: to index or not based on entity state 4.6. Providing your own id
4.6.1. The ProvidedId annotation
4.7. Programmatic API
4.7.1. Mapping an entity as indexable 4.7.2. Adding DocumentId to indexed entity 4.7.3. Defining analyzers 4.7.4. Defining full text filter definitions 4.7.5. Defining fields for indexing 4.7.6. Programmatically defining embedded entities 4.7.7. Contained In definition 4.7.8. Date/Calendar Bridge 4.7.9. Defining bridges 4.7.10. Mapping class bridge 4.7.11. Mapping dynamic boost
5. Querying
5.1. Building queries
5.1.1. Building a Lucene query using the Lucene API 5.1.2. Building a Lucene query with the Hibernate Search query DSL 5.1.3. Building a Hibernate Search query
5.2. Retrieving the results
5.2.1. Performance considerations 5.2.2. Result size 5.2.3. ResultTransformer 5.2.4. Understanding results
5.3. Filters
5.3.1. Using filters in a sharded environment
5.4. Faceting
5.4.1. Creating a faceting request 5.4.2. Applying a faceting request 5.4.3. Restricting query results
5.5. Optimizing the query process
5.5.1. Caching index values: FieldCache
6. Manual index changes
6.1. Adding instances to the index 6.2. Deleting instances from the index 6.3. Rebuilding the whole index
6.3.1. Using flushToIndexes() 6.3.2. Using a MassIndexer
7. Index Optimization
7.1. Automatic optimization 7.2. Manual optimization 7.3. Adjusting optimization
8. Monitoring
8.1. JMX
8.1.1. StatisticsInfoMBean 8.1.2. IndexControlMBean 8.1.3. IndexingProgressMonitorMBean
9. Spatial
9.1. Enable indexing of Spatial Coordinates
9.1.1. Indexing coordinates for Double Range Queries 9.1.2. Indexing coordinates in a Grid with Quad Trees 9.1.3. Implementing the Coordinates interface
9.2. Performing Spatial Queries
9.2.1. Returning distance to query point in the search results
9.3. Multiple Coordinate pairs 9.4. Insight: implementation details of Quad Tree indexing
9.4.1. At indexing level 9.4.2. At search level
10. Advanced features
10.1. Accessing the SearchFactory 10.2. Using an IndexReader 10.3. Accessing a Lucene Directory 10.4. Sharding indexes 10.5. Sharing indexes 10.6. Using external services
10.6.1. Exposing a service 10.6.2. Using a service
10.7. Customizing Lucene's scoring formula
11. Further reading

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值