最初に@Entity
とマークしてテーブルであることを確認し、最上位レベルでテーブル名を@Table
に設定する必要があります。継承を使用するには、戦略を選択する必要があります。このインスタンスでは、SINGLE_TABLEが必要です。次に、正しいタイプを選択するためには、カラム名とディスクリミネータのタイプを設定する - この場合はINTEGERを選択して、@DiscriminatorColumn
が必要です。また、型の注釈updatable = falseとinsertable = falseを追加して変更できないようにする必要があります。あなたは@Entity
と@DiscriminatorValue
(この場合は1)でそれらをマークする必要があり、あなたのサブクラスで
@Entity
@Table(name = "TABLE_NAME")
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name = "TYPE",discriminatorType = DiscriminatorType.INTEGER)
public class Id {
@Column(name="TYPE", insertable=false, updatable=false)
private Integer type;
}
。
@Entity
@DiscriminatorValue(value = "1")
public classs User exetends Id{
public String username;
public String password;
}
は、あなたがしようとしましたGoogle、このリンクを確認するhttp: //www.javatpoint.com/hibernate-table-per-hierarchy-using-annotation-tutorial-example –