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

JOOQ与休眠行为

赖星驰
2023-03-14
问题内容

我们知道Hibernate有机管局非常好的功能SaveOrUpdate当我们通过任何物体这种方法,知道数据是update或新的记录将在数据库中添加。这是功能同时有JOOQ或在我的代码,我来处理呢?


问题答案:

jOOQ也是一样。如果更改记录的主键,则它将使用INSERT,否则将使用UPDATE

实际上,当您从数据库中读取记录时,调用store()将触发UPDATE您所期望的。如果创建新记录,则将对其进行INSERT编辑。

在2.6中,克隆记录然后要求jOOQ对其进行更新有些困难(因为克隆将在新实例中设置主键,因此将其标记为“ new”-> insert)。



 类似资料:
  • 问题内容: 有谁知道Hibernate如何知道在调用时是要插入还是要更新数据库中的值? 到目前为止,我仅确定它不依赖于高速缓存中的信息,并且数据库中实体的存在由主键确定。 问题答案: 当您使用Hibernate时,将检查对象是否为瞬态对象(它没有标识符属性),如果是这样,它将通过生成标识符并将其分配给会话来使其持久化。如果对象已经具有标识符,它将执行。 从文档中: saveOrUpdate()执行

  • 休眠与唤醒 [HW,ACPI] acpi_sleep={s3_bios,s3_mode,s3_beep,s4_nohwsig,old_ordering,nonvs,sci_force_enable} ACPI休眠选项。 (1)s3_bios和s3_mode与显卡有关。计算机从S3状态(挂起到内存)恢复时,硬件需要被正确的初始化。这对大多数硬件都不是问题,但因为显 卡是由BIOS初始化的,内核无法获

  • 问题内容: 为了重新设计新产品,我们正在从Java中选择最佳框架。由于考虑使用模型的数据库不可知方法,因此我们正在研究iBATIS或Hibernate在Struts +Spring之间的选项。请提出建议,因为两者都可以提供持久性。 问题答案: Ibatis和Hibernate是完全不同的野兽。 我倾向于这样看待它:如果您的视图以 对象为中心, 则Hibernate会更好地工作。但是,如果您认为以

  • 问题内容: 对于新产品的重新设计,我们正在从Java中选择最佳框架。由于考虑使用模型的数据库不可知方法,因此我们正在研究Struts +Spring与iBATIS或Hibernate之间的选项。请提供最好的建议,因为两者都可以提供持久性。 问题答案: Ibatis和Hibernate是完全不同的野兽。 我倾向于这样看:如果您的视图以 对象为中心, 则Hibernate会更好地工作。但是,如果您认为

  • 问题内容: 我在某些文章中读到,在hibernate状态下DAO不是强制性的,其实现是“取决于”的,换句话说,我们可以在ORM与DAO模式之间进行选择。 好的,假设我不想使用DAO模式,所以我只使用了由hibernate(my ORM)提供的会话CRUD和查询操作。 特别是对于“搜索”和“查找”查询而言,始终重写它们是不正确的,因此将它们放入一个类是合理的想法。 但是,此类是一个简单的DAO,而没

  • 问题内容: 我有一个hibernate映射,该映射一直工作到最近-尽管我确定这是我所做的某些更改的结果,但我似乎找不到它。 映射文件将字段定义为: 该类将该字段定义为: 运行此代码时,出现以下错误: 与此对应的数据库字段定义为: 我还有其他几个具有相似结构和定义的类,并且它们没有问题。但是,可能由于我最近所做的一些更改而导致,此特定映射将不再正常工作。 有什么建议么? 问题答案: 我不确定,但是您