Hibernate有几种方法,它们以某种方式将对象放入数据库.它们之间的区别是什么,何时使用哪个,为什么只有一种智能方法不知道何时使用什么?
到目前为止,我确定的方法有:
save()
update()
-
saveOrUpdate()
个 saveOrUpdateCopy()
merge()
-
persist()
个
Hibernate有几种方法,它们以某种方式将对象放入数据库.它们之间的区别是什么,何时使用哪个,为什么只有一种智能方法不知道何时使用什么?
到目前为止,我确定的方法有:
save()
update()
saveOrUpdate()
个saveOrUpdateCopy()
merge()
persist()
个以下是我对这些方法的理解.这些主要是基于API,虽然我没有在实践中使用所有这些.
saveOrUpdate
save
update
saveOrUpdateCopy
merge 这就是我的知识开始动摇的地方.这里重要的是瞬时实体、分离实体和持久实体之间的区别.有关对象状态的更多信息,请拨打take a look here.使用SAVE&;UPDATE,您处理的是持久性对象.它们链接到一个会话,因此Hibernate知道发生了什么变化.但是,当您有一个临时对象时,不涉及会话.在这些情况下,您需要使用Merge进行更新,并使用Persistent进行保存.
persist