我可以简化休眠注释吗?



出于某些原因,我想对所有表使用不同的值生成序列,而不是一个序列,例如:

@Entity
public class User {
@Id
@TableGenerator(name = "user", table = "hibernate_sequences", pkColumnName = "sequence_name",
valueColumnName = "next_val", pkColumnValue = "user", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.TABLE, generator = "user")
private Integer id;
}

当我的应用程序有更多的表(现在超过 50 个(时,我想简化这段代码,如下所示:

@Entity
public class User {
@Id
@MyTableGenerator(name = "user")
private Integer id;
}

有没有办法做到这一点? 在这种情况下,我想实现两个目标。首先是将一些默认值设置为注释(休眠注释,而不是我的自定义注释(。其次是使用我的自定义注释之一表示多个休眠注释。

如果我没有很好地解释我的问题,我很抱歉,请指出来。

你可以尝试这样的事情:

@Entity
@SequenceGenerator(name = "USER_ID_GENERATOR", sequenceName = "SEQ_USER")
public class User {
@Id
@GeneratedValue(generator = "USER_ID_GENERATOR", strategy = GenerationType.IDENTITY)
private Integer id;
}

最新更新