我在Spring Boot中使用Hibernate Search。我沒有對(duì)Hibernate Search進(jìn)行任何特殊配置。它僅顯示應(yīng)用程序啟動(dòng)時(shí)的警告。如何指定hibernate.search.lucene_version?我的SearchService類(使用Hibernate Search的唯一位置):@Servicepublic class SearchService { private FullTextEntityManager fullTextEntityManager; private QueryBuilder queryBuilder; @Autowired public SearchService(EntityManager entityManager) { entityManager = entityManager.getEntityManagerFactory().createEntityManager(); fullTextEntityManager = Search.getFullTextEntityManager(entityManager); } @PostConstruct public void initialize() throws InterruptedException { fullTextEntityManager.createIndexer().startAndWait(); queryBuilder = fullTextEntityManager.getSearchFactory() .buildQueryBuilder().forEntity(Post.class).get(); } public List<Post> searchByQuery(String query) { org.apache.lucene.search.Query luceneQuery = queryBuilder.phrase() .withSlop(5) .onField("title") .sentence(query) .createQuery(); Query jpaQuery = fullTextEntityManager.createFullTextQuery(luceneQuery, Post.class); return (List<Post>) jpaQuery.setMaxResults(20).getResultList(); }}
添加回答
舉報(bào)
0/150
提交
取消