[JPA]@MappedSuperclassは、共通エンティティで継承(Created At、Modified Atなどの共通テーブル・グリッド)
4886 ワード
🙆♂️ import 🙇♂️
Java ORM標準JPAプログラミング
各テーブルに共通Columnがある場合、例えば
この場合、
次のコードは分かりやすく使用できます.
1つずつ追加しないで、上の
Java ORM標準JPAプログラミング
各テーブルに共通Columnがある場合、例えば
CREATED_TIME
、MODIFIED_TIME
.この場合、
@MappedSuperclass
で共同Entity
を宣言し、管理を継承することができる.次のコードは分かりやすく使用できます.
@MappedSuperclass
public class CommonEntity {
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "CREATED_DATE")
private Date createdDate;
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "MODIFIED_DATE")
private Date modifiedDate;
}
@Table(name = "TB_USER")
@Entity
public class User extends CommonEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="U_ID")
private long id;
@Column(name="ID")
private String userId;
@Column(name="NICK_NAME")
private String nickName;
@Builder
public User(long id, String nickName) {
this.id = id;
this.nickName = nickName;
}
}
Columnのセットが2つ以上のTableで使用されている場合、1つずつ追加しないで、上の
@MappedSuperclass
を使用します.Reference
この問題について([JPA]@MappedSuperclassは、共通エンティティで継承(Created At、Modified Atなどの共通テーブル・グリッド)), 我々は、より多くの情報をここで見つけました https://velog.io/@gillog/JPA-MappedSuperclass로-공통-Entity-상속-받기CreatedAt-ModifiedAt-등-공통-테이블-컬럼テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol