一尘不染

您是否有Hibernate实体的通用基类?

hibernate

您是否具有Hibernate实体的通用基类,即具有id,version和其他通用属性的MappedSuperclass?有什么缺点吗?

例:

@MappedSuperclass()
public class BaseEntity {

    private Long id;
    private Long version;
    ...

    @Id @GeneratedValue(strategy = GenerationType.AUTO)
    public Long getId() {return id;}

    public void setId(Long id) {this.id = id;}

    @Version
    public Long getVersion() {return version;}
    ...

    // Common properties
    @Temporal(TemporalType.TIMESTAMP)
    public Date creationDate() {return creationDate;}
    ...
}

@Entity
public class Customer extends BaseEntity {
    private String customerName;
    ...
}

阅读 156

收藏
2020-06-20

共1个答案

一尘不染

这对我们来说很好。除了ID和创建日期,我们还有一个修改日期。我们还具有一个实现 Taggable 接口的中间 TaggedBaseEntity
,因为我们的某些Web应用程序实体具有标签,例如有关Stack Overflow的问题。 __

2020-06-20