Hibernate - 在 postgres 中带有触发器的 saveAndFlush
Posted
技术标签:
【中文标题】Hibernate - 在 postgres 中带有触发器的 saveAndFlush【英文标题】:Hibernate - saveAndFlush with trigger in postgres 【发布时间】:2021-05-29 11:56:36 【问题描述】:我正在使用 SpringBoot、Hibernate 和 Postgres 在 Postgres DB 中,我在 INSERT 触发器之前有,它根据此表中的其他条目向某些列插入一些值。
我想在保存此实体后在我的应用中获取这些值,修改它们并使用修改后的值更新此实体
我能够在 saveAndFlush 方法结果中获取它们,但是在修改并再次保存它们之后,它们不会存储在 DB 中(好像我没有进行任何修改一样)。下面是代码
ExampleEntity initiallySavedEntity = entityRepository.saveAndFlush(exampleEntity);
initiallySavedEntity.setPropertyPopulatedByTrigger("blablabla");
entityRepository.save(initiallySavedEntity);
【问题讨论】:
【参考方案1】:@Generated
注释是您在这种情况下要查找的:https://docs.jboss.org/hibernate/orm/5.4/userguide/html_single/Hibernate_User_Guide.html#mapping-generated-Generated
【讨论】:
以上是关于Hibernate - 在 postgres 中带有触发器的 saveAndFlush的主要内容,如果未能解决你的问题,请参考以下文章
grails 2.4.0 中带有 hibernate:3.6.10.15 插件的错误
无法使用 Hibernate 访问 Postgres 数据库