hibernate flush与update区别

a)update操作的是在自由态或脱管状态(detached,因为session关闭而处于脱管的状态)。

b)flush操作则必须要求对象在持久态(persistent).

c)默认情况下一个持久态(persistent)对象的修改是不需要手动调用update,方法的,只要改了对象的值,那么在session关闭时,会自动调用flush对已经修改的持久态(persistent)对象进行update

d)Hibernate中用get方法得到一个对象,并对这个对象进行修改,如果不打开事务是不会自动对这个对象进行保存,就是调用flush方法也不会进行保存。

相关推荐