【问题标题】:Spring Data JPA select sequence for different bases, and set value to entitySpring Data JPA为不同的基础选择序列,并为实体设置值
【发布时间】:2019-04-11 23:13:53
【问题描述】:

我需要实现下一个逻辑:

我有实体:

@Data
@Entity
@Table(name = "USERS")
public class User {

    @Id
    @Column(name = "GUID")
    private String guid;

    @Column(name = "MESSAGE_ID")
    private String messageId;

    @Column(name = "SOME_VALUE")
    private String someValue;

我需要设置为someValue 生成的值,包括

"some prefix"+sequencefrom DB + "some suffix";

我可以选择sequense from Db,生成vsomeValue 并将其设置为实体,但是可能有办法让它更容易吗?因为在我的版本中我使用了两个碱基,并且我必须编写两个本机查询来选择一个序列并根据配置文件使用适当的一个。

我需要这样的东西:

    @Column(name = "SOME_VALUE")
    @Value(MyGenerator.class)
    private String someValue;

并在MyGenerator.class 中实现从前缀、序列和后缀生成someValue 的逻辑。

【问题讨论】:

    标签: java spring-boot spring-data-jpa sequence


    【解决方案1】:

    不要注释类成员,而是注释getter和setter,然后把你的逻辑放在那里。

    this question 中的进一步参考。

    【讨论】:

      【解决方案2】:

      您正在寻找基于自定义序列的 ID 生成器

      This 是一篇不错的文章,可能会对您有所帮助。

      【讨论】:

        猜你喜欢
        • 2020-01-23
        • 1970-01-01
        • 2018-12-03
        • 1970-01-01
        • 2020-04-03
        • 2016-05-10
        • 1970-01-01
        • 1970-01-01
        • 2019-09-30
        相关资源
        最近更新 更多