【问题标题】:Spring JPA + EclipseLink ID generated in trigger触发器中生成的 Spring JPA + EclipseLink ID
【发布时间】:2015-08-19 22:48:45
【问题描述】:

我在一个实体上指定了一个 ID 列,如下所示:

@Id
@Column(name="id_seq", unique=true, nullable=false, precision=38)
private Long idSeq;

真的很基本。问题是该字段与其他几个字段一起设置在触发器中。

似乎没有适合此需求的@Generated 选项。在良好的 JDBC 中,我会使用 getGeneratedKeys() 调用来做到这一点。

有没有办法指定插入后实体中需要更新这个字段?

【问题讨论】:

    标签: java spring jpa eclipselink


    【解决方案1】:

    事实证明这可以完成工作:

    @ReturnInsert(returnOnly=true)
    

    还必须在实体上使用 MyJpaRespoitory.saveAndFlush() 与 .save() 以便在保存完成时查看实体中更新的值。

    这适用于 Oracle,但可能不适用于所有平台。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-21
      • 1970-01-01
      • 2021-03-13
      • 1970-01-01
      • 2013-11-18
      • 2011-08-24
      • 2016-02-02
      • 1970-01-01
      相关资源
      最近更新 更多