JPA 本质上是 JDBC 的更高抽象。EntityManager 有一个 API setAutoFlushMode。它可以设置为 AUTO 或 COMMIT。用 JDBC 术语来说,这个等价物是什么?谢谢
问问题
1598 次
1 回答
4
JDBC 也具有自动提交功能。
它们都用于配置库是否应自动提交到数据库。
JDBC 的自动提交非常简单,它会立即将每次更新提交到数据库。如果没有自动提交,则在调用 commit 方法之前不会提交更改。
JPA AUTO 导致在执行查询之前刷新到数据库。像 find 这样的简单操作不需要刷新,因为库可以处理搜索,但是查询会复杂得多,因此如果设置了 AUTO,它将首先刷新它。如果模式设置为 COMMIT,它只会在调用 commit 或 flush 时刷新对数据库的更改。如果设置了 COMMIT 并运行查询,则不会返回尚未刷新的结果。
于 2012-04-05T22:44:53.217 回答