首页 > 移动平台 > 详细

JPA - @MappedSuperclass的使用

时间:2021-08-15 11:41:00      阅读:15      评论:0      收藏:0      [点我收藏+]

前言

@MappedSuperclass注解一般作为基类的注解,表眀该类是映射的超类,继承于它的子类实体在映射时会自动添加到子类实体的对应数据库表中,用于共同的属性代码复用和模型分离。


代码示例

  • BaseEntity.java
import lombok.Getter;
import lombok.Setter;
import javax.persistence.MappedSuperclass;
import java.util.Date;

@Getter
@Setter
@MappedSuperclass
public abstract class BaseEntity {

    private Date createTime;
    private Date updateTime;
    private Date deleteTime;

}
  • Banner.class
import lombok.Getter;
import lombok.Setter;
import javax.persistence.*;
import java.util.List;

@Entity
@Getter
@Setter
public class Banner extends BaseEntity{

    @Id
    private Long id;
    private String name;
    private String description;
    private String title;
    private String img;

}
  • BannerItem.class
@Entity
@Getter
@Setter
public class BannerItem extends BaseEntity{

    @Id
    private Long id;
    private String img;
    private String keyword;
    private Short type;
    private Long bannerId;
    private String name;

}
  • 上述代码将Banner与BannerItem中共有的属性createTime、updateTime、deleteTime抽象成BaseEntity基类,继承于它的子类Banner、BannerItem在映射时会自动添加到对应数据库表中。
- End -
梦想是咸鱼
关注一下吧
技术分享图片

JPA - @MappedSuperclass的使用

原文:https://www.cnblogs.com/maggieq8324/p/15142282.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!