Hibernate中记录的更新
我是新来冬眠的,我面临一个问题。 我已经从数据库中获取了记录,并在Jsp表单上显示了这些值 我想更新我显示的一些值 我将实体的ID设置为隐藏表单字段 当我点击submit时,表单上没有的值被设置为null 每次我必须更新记录时,我必须再次手动将所有值设置为对象,然后保存 范例 我的用户实体具有以下字段 身份证件 名字 姓氏 更新日期 日期创建 在我的jsp中,我只有两个字段 名字 姓氏 关于隐藏表单字段 身份证 在我的控制器中,我创建用户的新obj并设置这三个值 我正在使用合并方法更新我的记录 论合并 DateCreated和DateUpdate正在变为null 如何在不获取记录、设置修改后的值并保存它的情况下实现它 问候 Ramandeep SHibernate中记录的更新,hibernate,Hibernate,我是新来冬眠的,我面临一个问题。 我已经从数据库中获取了记录,并在Jsp表单上显示了这些值 我想更新我显示的一些值 我将实体的ID设置为隐藏表单字段 当我点击submit时,表单上没有的值被设置为null 每次我必须更新记录时,我必须再次手动将所有值设置为对象,然后保存 范例 我的用户实体具有以下字段 身份证件 名字 姓氏 更新日期 日期创建 在我的jsp中,我只有两个字段 名字 姓氏 关于隐藏表单字段 身份证 在我的控制器中,我创建用户的新obj并设置这三个值 我正在使用合并方法更新我的记录
用户;
User user;
session = //Open a session
Criteria criteria = session.createCriteria(User.class).add(Restrictions.idEq(id));
List<T> objList = criteria.list();
if(objList == null || objList.size() == 0) {
}
else {
user = objList.get(0);
}
//user.setproperties() //etc
//save it using the session
session=//打开一个会话
Criteria=session.createCriteria(User.class).add(Restrictions.idEq(id));
List objList=criteria.List();
if(objList==null | | objList.size()==0){
}
否则{
user=objList.get(0);
}
//user.setproperties()//等
//使用会话保存它
您需要从数据库获取对象。要么加载对象并使用hibernate(最安全的方法)进行更新,要么运行传统的更新查询,即sql 第二种方法可能更快,但如果不存在匹配项,则有可能不更新任何内容。假设您有要更新到数据库中的“employee”对象 步骤: