2012-12-08 4 views
0

La documentation de recherche Hibernate pour utiliser un ResultTransformer donne l'exemple suivant:Hibernate Search Projection - StaticAliasToBeanResultTransformer

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()); 
} 

Cependant, la classe StaticAliasToBeanResultTransformer n'existe pas dans le pot de base Hibernate.

Est-ce que quelqu'un sait si c'est supposé être une classe différente que je n'ai pas encore identifiée? Ou existe-t-il dans un autre projet Hibernate que je n'ai pas inclus?

Je dois accomplir cette idée de mapper les champs indexés aux propriétés de mon bean "BookView", car mes propriétés et champs n'ont pas le même nom. J'utilise Hibernate 4.1.8 et Hibernate Search 4.1.1

Répondre

1

AFAIK il n'y a pas une telle classe dans la base de code Hibernate. Je crois qu'il faisait partie des échantillons un jour, mais nulle part pour être trouvé depuis.

La manière la plus simple est d'écrire votre propre implémentation.

Questions connexes