7.5.2.3. ResultTransformer
投射结果返回为对象数组。如果对象使用的数据结构与应用的要求不匹配,请应用 ResultTransformer。ResultTransformer 在执行查询后构建必要的数据结构。
示例:在 Projections 中使用 ResultTransformer
org.hibernate.search.FullTextQuery query =
s.createFullTextQuery( luceneQuery, Book.class );
query.setProjection( "title", "mainAuthor.name" );
query.setResultTransformer( new StaticAliasToBeanResultTransformer( BookView.class, "title", "author" ) );
List<BookView> results = (List<BookView>) query.list();
for(BookView view : results) {
log.info( "Book: " + view.getTitle() + ", " + view.getAuthor() );
}
ResultTransformer 实施示例可在 Hibernate 核心代码库中找到。