使用ResultTransformer的Hibernate Search文档提供了以下示例:
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() );
}
但是,Hibernate核心jar中不存在StaticAliasToBeanResultTransformer
类。
有谁知道这是否应该是一个我还无法识别的不同类?或者它是否存在于我未包含的另一个Hibernate项目中?
我需要完成将索引字段映射到我的“BookView”bean中的属性的想法,因为我的属性和字段的名称不相同。我正在使用Hibernate 4.1.8和Hibernate Search 4.1.1
答案 0 :(得分:3)
是的,没有这样的课程。另见https://forum.hibernate.org/viewtopic.php?f=9&t=1004608。只需通过实现 org.hibernate.transform.ResultTransformer 编写自己的变换器。
答案 1 :(得分:1)
AFAIK在Hibernate代码库中没有这样的类。我相信它有一天是样品的一部分,但从那时起就无处可寻。
最简单的方法是编写自己的实现。