当前位置: 首页 > 面试题库 >

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

庾勇军
2023-03-14
问题内容

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

所以这是我的实际问题:

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

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

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


问题答案:

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

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

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



 类似资料:
  • 问题内容: 如标题所述,我在应用程序中使用了休眠刷新模式机制。因此,当我更改休眠持久对象中的任何数据时,它会自动反映在数据库中。我不要这个 因此,我找到了使用FlushMode的解决方案。 所以这是我的实际问题: 最好使用冲洗模式代替?和 文档中此声明的含义是什么? 有时在执行查询之前会刷新会话,以确保查询从不返回过时状态。 http://docs.jboss.org/hibernate/orm/

  • 我用的是Hibernate4.3.10,最后是mysql 5.6。 对于刷新模式,默认为“自动”,对吗?在本例中,如果有关于持久化A、选择B、提交的步骤,那么hibernate应该先执行选择B,然后执行持久化A,对吗? (我的理解是基于https://dzone.com/articles/dark-side-hibernate-auto-flush,还是我误解了这篇文章?) 如果我的理解是正确的,

  • 问题内容: 我必须更新我的Doctrine实体以匹配(可能很大)XML文件中的记录。我还必须根据XML中的数据更新ManyToMany关联。这是我在循环内执行的操作: 从XML获取数据 从数据库获取实体(如果不存在,则创建新实体) 设置新实体属性 获取当前的实体关联(getter返回对象) 清除所有关联(通过调用) 设置新的关联(通过在子循环中调用) 由EntityManager保留实体 *循环

  • 问题内容: 在stackoverflow上多次提到自动模块,但是我找不到自动模块的完整,简洁和自足的定义。 那么,什么是自动模块?是否导出所有软件包?是否打开所有包装?它会读取所有其他模块吗? 问题答案: 我首先回答您的实际问题(“什么是自动模块?”),但我还要解释它们的 用途 。很难理解为什么自动模块在没有这些信息的情况下会表现出自己的方式。 模块系统根据在模块路径上找到的每个JAR创建一个模块

  • 自动模块在stackoverflow上被提到过很多次,但我找不到一个完整、简洁和自给自足的自动模块定义。 那么,什么是自动模块?它出口所有的包裹吗?它能打开所有的包裹吗?它是否读取所有其他模块?

  • 问题内容: 我有一个Spring应用程序,它在PostgreSQL数据库上使用Hibernate。我正在尝试将文件存储在数据库表中。似乎它与文件一起存储行(我只是在EntityManager上使用persist方法),但是当从数据库加载对象时,出现以下异常: 为了加载数据,我使用了MultipartFile瞬态属性,并在其设置程序中设置了要保留的信息(字节[],文件名,大小)。我要坚持的实体看起来