AUTO&的区别是什么? COMMIT FlushModes?

时间:2014-07-15 13:34:26

标签: java jpa flush

  • entityManager.setFlushMode(FlushModeType.AUTO)
  • entityManager.setFlushMode(FlushModeType.COMMIT)

上述两者之间的区别是什么?使用COMMIT flushMode的优势是什么?

1 个答案:

答案 0 :(得分:0)

  

JPA AUTO在执行查询之前导致对数据库的刷新。像find这样的简单操作不需要刷新,因为库可以处理搜索,但是查询会复杂得多,因此如果设置了AUTO,它将首先刷新它。如果模式设置为COMMIT,它将仅在调用commit或flush时刷新对数据库的更改。如果设置了COMMIT,并且运行了查询,则不会返回尚未刷新的结果。

来源:Another stack overflow question