SSH中执行HQL语句的org.hibernate.hql.internal.ast.QuerySyntaxException问题

发布于 2021-11-26 05:30:39 字数 2225 浏览 828 评论 3

SSH框架中,执行的HQL语句如下:

  List<Week> list =  weekService.query("from 表名 w where w.username='"+username+"' and w.hostname="+hostname+" and w.meetingDate="+meetingDate);

控制台报错如下:

line 1:85: unexpected token: Jun
at org.hibernate.hql.internal.antlr.HqlBaseParser.identPrimary(HqlBaseParser.java:4100)
at org.hibernate.hql.internal.antlr.HqlBaseParser.primaryExpression(HqlBaseParser.java:860)
at org.hibernate.hql.internal.antlr.HqlBaseParser.atom(HqlBaseParser.java:3472)
 ...省略同类型错误信息

[ERROR] 2015-06-19 18:33:21 org.apache.struts2.dispatcher.Dispatcher - Exception occurred during processing request: unexpected token: Jun near line 1, column 85 [from regularmeeting w where w.username='lida' and w.name=lida and w.meetingDate=Fri Jun 19 18:33:21 CST 2015]
org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: Jun near line 1, column 85 [from regularmeeting w where w.username='lida' and w.name=lida and w.meetingDate=Fri Jun 19 18:33:21 CST 2015]
at org.hibernate.hql.internal.ast.QuerySyntaxException.convert(QuerySyntaxException.java:54)
at org.hibernate.hql.internal.ast.QuerySyntaxException.convert(QuerySyntaxException.java:47)
at org.hibernate.hql.internal.ast.ErrorCounter.throwQueryException(ErrorCounter.java:79)
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:276)
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:180)
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:136)
 ...省略同类型错误信息

主要错误信息:

 Exception occurred during processing request: unexpected token: Jun near line 1, column 85 [from regularmeeting w where w.username='lida' and w.name=lida and w.meetingDate=Fri Jun 19 18:33:21 CST 2015]

 这里的HQL语句系统报出来的跟我写的不一样  w.name是系统的  我的是w.hostname 而且关键是我不管怎么改HQL语句 都会出现这错误提示 不知道是哪出现问题了.

  再看调用的接口及实现类所执行方法里也没看见写SQL语句的地方,hibernate对应的类映射文件,我这好像也没有,弱弱的问句,还有其他方法可以配置hibernate与实体类或者说表的映射关系么.


   弄了一天都没解决,,急啊 求大神帮帮忙 ,  才学习SSH不久!!!!!!!!!     谢谢!!!!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

筱果果 2021-12-01 02:55:07

这个没有影响的吧 我这是复制的代码 在其他模块中用的这条HQL语句都可以 只是查询的对应对象变了 而且就算是引号问题 可是报错里 为什么列名是其他的 而且别名也是不一样的 我之前改过别名 无论怎么改那数据库的执行语句好像都是已经固定好了 就是参数的问题

拥有 2021-11-30 19:30:13

好好检查检查sql,靠复制粘贴是不行的

多彩岁月 2021-11-27 08:58:04

很明显
 
" and w.meetingDate="+meetingDate);这里的sql没加单引号啊

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文