Hibernate.org
Community Documentation
Next
Hibernate Search
Apache
Lucene
™ Integration
Reference Guide
3.3.0.Final
Preface
1. Getting started
1.1. System Requirements
1.2. Using Maven
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. Back end types
2.2.2. Work execution
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. Directory configuration
3.3. Sharding indexes
3.4. Sharing indexes
3.5. Worker configuration
3.6. JMS Master/Slave configuration
3.6.1. Slave nodes
3.6.2. Master node
3.7. JGroups Master/Slave configuration
3.7.1. Slave nodes
3.7.2. Master node
3.7.3. JGroups channel configuration
3.8. Infinispan Directory configuration
3.8.1. Requirements
3.8.2. Architecture
3.8.3. Infinispan Configuration
3.9. Reader strategy configuration
3.10. Tuning Lucene indexing performance
3.11. LockFactory configuration
3.12. Exception Handling Configuration
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 (experimental)
4.3.4. Retrieving an analyzer
4.4. Bridges
4.4.1. Built-in bridges
4.4.2. Custom bridges
4.5. Providing your own id
4.5.1. The ProvidedId annotation
4.6. Programmatic API
4.6.1. Mapping an entity as indexable
4.6.2. Adding DocumentId to indexed entity
4.6.3. Defining analyzers
4.6.4. Defining full text filter definitions
4.6.5. Defining fields for indexing
4.6.6. Programmatically defining embedded entities
4.6.7. Contained In definition
4.6.8. Date/Calendar Bridge
4.6.9. Defining bridges
4.6.10. Mapping class bridge
4.6.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. Optimizing the query process
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. Advanced features
9.1. Accessing the SearchFactory
9.2. Accessing a Lucene Directory
9.3. Using an IndexReader
9.4. Use external services in Hibernate Search components (experimental)
9.4.1. Exposing a service
9.4.2. Using a service
9.5. Customizing Lucene's scoring formula
10. Further reading
Next
Preface