【发布时间】:2018-03-25 10:20:30
【问题描述】:
我是JPA 的新手,我正在阅读Pro JPA 2 Mastering the java Persistence API 并且我已经阅读了以下段落:
如果 持久化提供者认为有必要。
我的问题
- 什么是
deems it necessary? - 在哪些情况下提供者
deems it necessary?
我想详细了解这句话deems it necessary的意思。欢迎任何帮助,在此先感谢。
【问题讨论】:
-
这意味着,行为取决于实现。提供者可以在“认为有必要”时刷新(但没有义务)。
-
@Henry 知道在我们的企业中我们使用
EclipseLink是否可以提供EclpiseLink 使用flush时的案例的详细说明 -
可能是的,如果您检查 EclipseLink 的源代码。但请记住,这可能会在未来的版本中发生变化。因此,您的应用程序不得依赖任何特定行为。
-
@Henry 知道刷新会影响结果,最好手动使用刷新(开发人员在代码中明确)还是将其留给提供者?
-
过度使用
flush会对性能产生负面影响。因此,通常最好将其留给提供商。当您需要手动刷新时,有一些罕见的例外情况。