一尘不染

使用什么冲洗模式“自动”或“提交”

hibernate

如我的标题所述,我Auto在应用程序中使用了hibernate刷新模式机制。因此,当我更改hibernate持久对象中的任何数据时,它会自动反映在数据库中。我不要这个
因此,我找到了使用FlushMode的解决方案Commit

所以这是我的实际问题:

  • 最好使用Commit冲洗模式代替Auto?和
  • 文档中此声明的含义是什么?

有时在执行查询之前会刷新会话,以确保查询从不返回过时状态。

http://docs.jboss.org/hibernate/orm/3.5/javadoc/org/hibernate/FlushMode.html


阅读 272

收藏
2020-06-20

共1个答案

一尘不染

Hibernate(和JPA)旨在自动检测对持久对象的更改并将其持久保存到数据库中。没有“保存”操作。

如果您不希望保存任何内容,则应使用分离的对象。使用a
StatelessSession加载它们,或在加载对象后调用detach。这会将它们从将自动保存它们的监视中删除。

不要搞乱冲洗设置,它只会在以后让您头疼。

2020-06-20