解决Hibernate4执行update操作,不更新数据的问题
后台封装java对象,使用hibernate4再带的update,执行不更新数据,不报错。
下面贴出解决方法:
失败的方法
hibernate自带update代码:(失效)
Session session = this.getSessionFactory().getCurrentSession(); ession.update(obj);
成功的方法
使用hql语句执行:
public void updateUser(String name, String tel,
String msg, Date date){
String hqlStr = "UPDATE User a" + " SET a.userName=? ," + " a.createTime=? ," + " a.phone=?, " + " a.backMsg=? " + " WHERE a.userId=?"; Session session = this.getSessionFactory().getCurrentSession(); session.createQuery(hqlStr).setString(0, name) .setTimestamp(1, date).setString(2, tel).setString(3, msg).setString(4, id).executeUpdate(); }
}