老兄,你的hibernate是继承HibernateDaoSupport的吗?如果是不是很简单吗修改。
hibernateDaoSupport提供两个方法都可以实现修改。
1.public void update(Object o) {
getHibernateTemplate().saveOrUpdate(o);
}
这个方法其实用保存也可以,这个方法会看你这条数据是否已经存在了如果存在了就当更新,如果不存在就当一条新记录保存起来
2.public void update(Object o) {
getHibernateTemplate().update(o);
}
上面是跟Spring整合的时候用到了Springfromwork里的包才有HibernateDaoSupport,如果就单单就用Hibernate的话就需要如下操作做修改。
public void update (Obeject o){
String hql = "update set 类属性=o.get属性值设的值 from 类 where 类的属性=o.get属性值"//为了不然它把所有数据都进行更改就需要设置where条件。
Query query = session.createQuery(hql);
query.executeUpdate();
}
上面是用HQL语句做的,HIbernate也可以用底层的SQLQuery和完全面向对象的Criteria语句做更新,方法多种多样。
,首先这是个类型转换的问题;问题 出在authors auh=(authors) qy.setstring(0, ai);
要先在query qy=session.createquery("from authors where auid=?");把sql语句写完整先,你这样都还没有查就强行转换了
用户登录
还没有账号?立即注册
用户注册
投稿取消
文章分类: |
|
还能输入300字
上传中....