常见的JPA基础实体单独的主密钥序列



我有一个 userauthenticationityity baseentity 。。

@MappedSuperclass
public class BaseEntity implements Serializable {
  @Id
  @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "user_seq_generator")
  @SequenceGenerator(name = "user_seq_generator", sequenceName = "user_seq", allocationSize = 1)
  private Long id;
  public Long getId() {
    return id;
  }
  public void setId(Long id) {
    this.id = id;
  }
}
@Entity
@Table(name = "user_authentication")
public class UserAuthenticationEntity extends BaseEntity {
  private String username;
  private String password;
  public UserAuthenticationEntity(String username, String password){
    this.username = username;
    this.password = password;
  }
  ...
  ...
}

所有未来的实体都将扩展 baseentity 类。

所有实体是否有可能从 baseentity 类继承 id 属性,但具有单独的序列来生成主键?

我知道这是一个有线的方案断路器。不确定是否可以完成。

也欢迎任何实体课程的替代/更好的设计。

我认为,

是使用实体ID的继承的坏主意。

通常,每个实体都包含一个带有@ID和@generatedValue Antarions的ID属性,并且继承用于继承常见属性。但是,如果您想尝试一下,可以查看以下问题:

用jpa

在@mappedsuperclass中定义的@ID覆盖@ID

相关内容

  • 没有找到相关文章

最新更新