・作成日
・更新日
・論理削除フラグ
の類というのは、基本的にどのテーブルにも追加していたりしませんか?
こういった場合は、何度も書くのはプログラマとしてアレなので、一箇所に追いやりたいところ。
○追い出したクラス(エンティティではない)
@Embeddable
public class Basis implements Serializable
{
@Column(nullable = false)
@NotNull
private Date entry = new Date();
@Column(nullable = false)
@NotNull
private Date modify = new Date();
@Column(nullable = false)
@NotNull
private Boolean del = false;
}
○呼び出すエンティティ側
@Embedded
private Basis basis = new Basis();
継承するんじゃなくて@EmbeddedアノテーションでDIするというのが、肝ですね。
0 件のコメント:
コメントを投稿