首页 > Web开发 > 详细

SSH框架整合遇到的错误——Hibernate查询语句出现错误

时间:2018-07-01 00:01:15      阅读:750      评论:0      收藏:0      [点我收藏+]

在调试前台注册界面,填写注册信息,用户名Ajax异步验证时报错,报错文件在Dao文件的查询语句中。

技术分享图片

 

报错信息:

java.lang.IllegalArgumentException: org.hibernate.QueryException: Legacy-style query parameters (`?`) are no longer supported; use JPA-style ordinal parameters (e.g., `?1`) instead : from com.itcast.shop.user.vo.User where username = ? [from com.itcast.shop.user.vo.User where username = ?]
at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:133)
at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:157)
at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:164)
at org.hibernate.internal.AbstractSharedSessionContract.createQuery(AbstractSharedSessionContract.java:713)
at org.hibernate.internal.AbstractSharedSessionContract.createQuery(AbstractSharedSessionContract.java:103)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

 

错误原因:find方法过时,导致HQL语句格式必须改变才能使用。

将HQL语句中的"?"改为JPA-style:

String hql="from User where username = ?0";

这样就可以正确查询到信息了。

SSH框架整合遇到的错误——Hibernate查询语句出现错误

原文:https://www.cnblogs.com/aishanyishi/p/9249027.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!