| Matthias Wessendorf That method uses a LIKE query with the wildcard operator at the beginning of the search term. Very likely this will cause a full-table scan, a.k.a. things get slow. Check out [http://use-the-index-luke.com/sql/where-clause/searching-for-ranges/like-performance-tuning|this post], you may work around that by leveraging some DB-specific functions which are more suitable for full-text search (if you can go for those). Or you use Hibernate Search with Lucene  |