jsp页面报错,帮忙看看

javax.servlet.ServletException:org.hibernate.hql.ast.QuerySyntaxException:unexpectedt... javax.servlet.ServletException: org.hibernate.hql.ast.QuerySyntaxException: unexpected token: * near line 1, column 8 [select * from user u where u.userName = ?]
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:523)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:643)
javax.servlet.http.HttpServlet.service(HttpServlet.java:723)

我的代码

public User getUserByUName(String uName){
String hql = "select * from user u where u.userName = ?";
List<User> list = getSession().createQuery(hql).setParameter(0, uName).list();
if (list.size() > 0) {
return (User)list.get(0);
}
return null;
}
展开
 我来答
迷糊百味
2013-07-31 · TA获得超过108个赞
知道答主
回答量:76
采纳率:0%
帮助的人:58.2万
展开全部
String hql = "select * from user u where u.userName = ?";
List<User> list = getSession().createQuery(hql).setParameter(0, uName).list();

**hibernate的hql语句不支持使用 *,使用hibernate中的SQL方式查询才使用带*的SQL语句。
另外,user是关键字,建议取表名和字段名的时候别用数据库内置的关键字来命名
追问
那我该怎么改呢?user表名已经建好了,不方便改动
追答
将hql语句改成:select u from (user表对应的实体类名称) u where u.userName = ?,再运行试试看。

user关键字为表名在这里影响不大,不使用关键字命名是作为数据库命名的规范;在程序开发中,SQL语句运行时,在某些情况下会有因为SQL语句中包涵关键字而出错的困扰,所以建议尽量避开。
luoluoyide
2013-07-31 · TA获得超过397个赞
知道小有建树答主
回答量:529
采纳率:0%
帮助的人:278万
展开全部
hql语句不需要select了,直接String hql = "from user u where u.userName = ?" 这样就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ch...7@163.com
2013-07-31
知道答主
回答量:1
采纳率:0%
帮助的人:1462
展开全部
HQL="from user where userName=?"
更多追问追答
追问
这样改了的话,还有查询功能吗?
追答
可以  你试一下吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式