Hibernate3.0 采用新的基于ANTLR的HQL/SQL查询翻译器,org.hibernate.hql.ast.ASTQueryTranslatorFactory ,好像有bug,我原来也遇到类似错误,你改用h2的org.hibernate.hql.classic.ClassicQueryTranslatorFactory 试试看

解决方案 »

  1.   

    楼上说的在哪改,是改hibernate的源代码吗?
      

  2.   

    偶没用过hibernate3,一直都是用2的,不过据说是hibernate3对中文支持有点问题。试先声明,听很多人这么讲的,我可没试过。另外:我觉得你的语句本身也可能有点问题,你是直接把中文拼到hql里的,如果你的数据库是utf-8编码的话,就很有可能是乱码了。(因为你的中文没有经过utf-8编码)
      

  3.   

    no,不是改用h2,在hibernate.cfg.xml中加入:
    <property name="hibernate.query.factory_class">
    org.hibernate.hql.classic.ClassicQueryTranslatorFactory
    </property>