方法一:(不好,因为不灵活)
使用注解:
在不希望被更新的字段对应的属性的getXXX()方法上注解:@Column(updatable=false)
使用XML:
在不希望被更新的字段对应的属性的xxx.hbm.xml配置文件中设置:
<property name="xxx" update="false"/>
方法二:只更新所修改的字段
在xxx.hbm.xml中的标签上设置属性:dynamic-update=”true”
此方法仅适用于在同一个Session的情况下
方法三:
跨Session实现只更新所修改的字段
使用session.merge()方法
方法四:(建议使用)
HQL方式
Query q = session.createQuery("update Student s set s.name = 'zhangsan' where s.id = 1");
q.executeUpdate();