用户登录
用户注册

分享至

hibernate修改信息

  • 作者: 蔡东晓灬灬灬
  • 来源: 51数据库
  • 2021-01-19
老兄,你的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语句写完整先,你这样都还没有查就强行转换了
软件
前端设计
程序设计
Java相关