1.修改注解:指定某个属性为:@Column(updatable=false),这个标签的意思是:指定某列不在更新的范围内。同时还可以在xml的property 属性中指定update。少用,不灵活
2.xml :在xml的配置文件中设置class的属性dynamic-update,如:
<class name="Student" dynamic-update="true">。在跨Session时,只靠dynamic-update是不行的,因此,用到merge。session2.merge(s);在jpa标准的annotation中没有对应的设置,而hibernate扩展了对应的功能。
3.HQL|EJBQL语句:Query q=session.createQuery("update Student s set s.name='张三' where s.id=1");(推荐使用)
本文介绍了三种禁用数据库字段更新的方法:使用注解@Column(updatable=false);在XML配置文件中设置dynamic-update为true,并结合使用merge操作;直接通过HQL或EJBQL执行更新语句。
&spm=1001.2101.3001.5002&articleId=6068999&d=1&t=3&u=3fceca5eaffd4407a62416fb5d12e7e6)
988

被折叠的 条评论
为什么被折叠?



