标题:getHibernateTemplate()的查询问题(已解决)
取消只看楼主
hwoarangzk
Rank: 4
来 自:冰封王座
等 级:贵宾
威 望:12
帖 子:1894
专家分:0
注 册:2007-7-17
 问题点数:0 回复次数:2 
getHibernateTemplate()的查询问题(已解决)
我想根据username来查询纪录,然后删除:
public void delete(String username) {
        String QueryUserByUsername = "from User u where u.username=:"+username;
        List list = getHibernateTemplate().find(QueryUserByUsername);
        User user = (User)list.get(0);
        getHibernateTemplate().delete(user);
    }
User有以下属性:id,username,age,address,job
但是总报错:
EVERE: Servlet.service() for servlet action threw exception
org.springframework.orm.hibernate3.HibernateQueryException: Not all named parameters have been set: [Bob] [from User u where u.username=:Bob]; nested exception is org.hibernate.QueryException: Not all named parameters have been set: [Bob] [from User u where u.username=:Bob]
org.hibernate.QueryException: Not all named parameters have been set: [Bob] [from User u where u.username=:Bob]
可能是我的hql语句不对。请问应该怎么写才能正常查询啊?谢谢~~~

[[italic] 本帖最后由 hwoarangzk 于 2007-12-28 16:14 编辑 [/italic]]
搜索更多相关主题的帖子: username User delete String list 
2007-12-28 15:53
hwoarangzk
Rank: 4
来 自:冰封王座
等 级:贵宾
威 望:12
帖 子:1894
专家分:0
注 册:2007-7-17
得分:0 
String QueryUserByUsername = "from User u where u.username=?";
List list = getHibernateTemplate().find(QueryUserByUsername, username);
果然是没写对,改成这样就可以了

I'm here, as always...
2007-12-28 16:13
hwoarangzk
Rank: 4
来 自:冰封王座
等 级:贵宾
威 望:12
帖 子:1894
专家分:0
注 册:2007-7-17
得分:0 
getHibernateTemplate()是spring里面一个HibernateDaoSupport的方法,返回一个HibernateTemplate,可以调用一些操作数据库的方法,启动事务这些都是配好了的,不用管的

I'm here, as always...
2008-01-02 09:49



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-194832-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027365 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved