私は次のエンティティクラス構造を持っています
製品クラス
@Entity
@Table(name = "PRODUCTS")
public class Product implements Serializable{
@Id
private productSlNo;
@Column(name = "PRODUCT_ID")
private String productNo;
ProductDetail クラス
@Entity
@Table(name = "PRODUCTDETAILS")
public class ProductDetail extends Product implements Serializable {
@Column(name = "PRODUCT_DESC")
private String productDesc;
私はすでにproductNo
Product クラスにあるので、クラスで宣言しませんでしたProductDetail
。
一意のキーがクラスで定義されているため、クラスに必須の@Id
注釈を付ける方法を知りたいです。そうしないと、The entity has no primary key attribute definedエラーが発生します。
ProductDetail エンティティの一意のキーですProductDetail
Product
productNo
どうすればこれを解決できますか? どんな助けも非常に高く評価されます。
更新 1
ProductDetail クラス
@Entity
@Table(name = "PRODUCTDETAILS")
public class ProductDetail implements Serializable {
@Id
@Column(name = "PRODUCT_ID")
private String productNo;
@Column(name = "PRODUCT_DESC")
private String productDesc;
製品クラス
@Entity
@Table(name = "PRODUCTS")
public class Product implements Serializable{
@Id
private productSlNo;
@Id
@Column(name = "PRODUCT_ID")
@OneToOne
@MapsId
private String productNo;
ProductDetail productDetail;