天天看点

Caused by: org.hibernate.QueryException: query must begin with SELECT or FROM:

hibernate写hql删除实体时,报这个错误

Caused by: org.hibernate.QueryException: query must begin with SELECT or FROM:

原因:

hibernate配置文件中解析hibernate查询语言为2.x版本,

org.

hibernate 配置文件hibernate.cfg.xml里 解析hibernate 查询语言为2.X版本,

即: 属性hibernate.query.factory_class 对应的值为org.hibernate.hql.classic.ClassicQueryTranslatorFactory

将值改为3.x

org.hibernate.hql.ast.ASTQueryTranslatorFactory

即可!

修改后又报另一个错误

nested exception is java.lang.NoClassDefFoundError: antlr/ANTLRException

这是因为3.x版本比2.x版本多了一个jar包:antlr-2.7.6.jar

继续阅读