1
私はクラスDocument
を持っています。これにはフィールドAd ad
と@OneToOne
アノテーションが含まれています。 クラスResultDocumentはDocumentを継承し、JOINED
継承ストラテジが適用されます。アプリを起動すると、エラーが発生します: org.hibernate.MappingException: property [ad] not found on entity [ua.translate.model.ad.ResultDocument]
Hibernateのスーパークラスの@OneToOneアノテーションを持つフィールド
どうかこのエラーの原因を教えてください。
クラスのドキュメント:
@Entity
@Table(name = "INIT_DOCUMENT_TEST")
@Inheritance(strategy = InheritanceType.JOINED)
public class Document {
@Id
@SequenceGenerator(name = "standart",initialValue = 1)
@GeneratedValue(generator = "standart",strategy =GenerationType.SEQUENCE)
@Column(name = "DOCUMENT_ID")
private long id;
@Lob
@Column(name = "DOCUMENT_FILE",nullable = false)
private byte[] file;
@Column(name = "DOCUMENT_FILE_NAME",nullable = false)
private String fileName;
@Column(name = "DOCUMENT_CONTENT_TYPE",nullable = false)
private String contentType;
@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "DOCUMENT_AD_ID")
private Ad ad;
.....
}
クラスResultDocument:私はあなたが休止状態またはJPAを使用している場合、技術は実行せずに関係を使用するので、あなたは、ドキュメントから延びるべきではないと考えて
@Entity
@Table(name = "RESULT_DOCUMENT_TEST")
@PrimaryKeyJoinColumn(name= "result_document_id")
public class ResultDocument extends Document{
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "TRANSLATOR",nullable = false)
private Translator downloader;
.....
}
詳細を説明してください。私は理解していない、あなたが意味すること。 – Yuriy