Hibernate save()与persist()区别

版权声明:开源共享,觉得文章对你有用就拿去吧,内容如果侵犯您的权益或者您有其他需要交流的,可以联系taishanglianqing#qq.com(把#替代为@即可) https://blog.csdn.net/qq_22585453/article/details/80729342
之所以提供与save()功能几乎完全类似的persist()方法,一方面是为了照顾JPA的用法习惯。另一方面,save()和 persist()方法还有一个区别:使用 save() 方法保存持久化对象时,该方法返回该持久化对象的标识属性值(即对应记录的主键值);但使用 persist() 方法来保存持久化对象时,该方法没有任何返回值。因为 save() 方法需要立即返回持久化对象的标识属性,所以程序执行 save() 会立即将持久化对象对应的数据插入数据库 ;而 persist() 则保证当它在一个事物外部被调用时,并不立即转换成 insert 语句, 这个功能是很有用的,尤其当我们封装一个长会话流程的时候,persist() 方法就显得尤为重要了。

猜你喜欢

转载自blog.csdn.net/qq_22585453/article/details/80729342