@Inheritance(strategy = InheritanceType.JOINED)@DiscriminatorColumn(name = "DTYPE") : 부모 클래스에 구분 컬럼 지정@DiscriminatorValue("A") : 구분 컬럼에 입력할 값 지정@Inheritance(strategy = InheritanceType.SINGLE_TABLE)@DiscriminatorColumn(name = "DTYPE")@DiscriminatorValue("A")@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)@MappedSuperclass@AttributeOverride(s) : 물려받은 매핑 정보 재정의, name 속성은 부모 컬럼, column 속성은 재정의할 컬럼@AssociationOverride(s) : 연관관계 재정의@IdClass(ParentId.class)@Id @Column(name = "parent_id1") private String id1;@Id @Column(name = "parent_id2") private String id2;@ManyToOne
@JoinColumns({
	@JoinColumn(name = "parent_id1", referencedColumnName = "parent_id1"),
    @JoinColumn(name = "parent_id2", referencedColumnName = "parent_id2")
})
private Parent parent;@EmbeddedId@Embeddable@MapsId("parentId")@OneToOne
@JoinTable(name = "parent_child",
	joinColumns = @JoinColumn(name = "parent_id"),
  inverseJoinColumns = @JoinColumn(name = "child_id"))
private Child child;@OneToOne(mappedBy = "child")
private Parent parent;@SecondaryTable(name = "추가할테이블명", pkJoinColumns = @PrimaryKeyJoinColumn(name = "추가할테이블명_id"))@Column(table = "추가할테이블명")@SecondaryTables({})