HibernateTemplateで複雑な検索をする

はまった。。。

本をよく読め!337ページの後半からちゃんとかいてあるがな!!

複雑なクエリをする場合は
HibernateTemplate#executeFind()
を使う。

http://static.springframework.org/spring/docs/1.1.5/api/org/springframework/orm/hibernate/HibernateTemplate.html
にあった。

 List result = hibernateTemplate.executeFind(new HibernateCallback() {
   public Object doInHibernate(Session session) throws HibernateException {
     Query query = hibernateTemplate.createQuery(session, "...");
     ...
     return query.list();
   }


});