谁能告诉我persist()vs save()Hibernate有什么优势?
persist()定义明确。它使瞬态实例持久化。但是,不能保证将标识符值立即分配给持久实例,分配可能在刷新时发生。规范没有这么说,这是我的问题persist()。
persist()
persist()还保证如果在事务边界之外调用它,则不会执行INSERT语句。这在具有扩展的会话/持久性上下文的长时间对话中很有用。
persist()需要类似的方法。
save()不能保证相同,它返回一个标识符,并且如果必须执行INSERT来获取标识符(例如“ identity”生成器,而不是“ sequence”),则无论你位于内部还是外部,此INSERT都会立即发生交易。在具有扩展的会话/持久性上下文的长时间对话中,这不好。
save()