0
私は、休止状態のEmbeddable
クラスがEntity
を使用するシナリオを持っています。私がSOやその他のリンクで見つけた様々な答えによると、は、クラスの中に@ManyToOne, @OneToMany
と書くことができます。Embeddable、Hibernate内の多対1の関係
エンティティA
@Entity
@Table(name = "A")
public class A {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int a_id;
@ElementCollection
@JoinTable(name = "embeded_class_table", joinColumns = @JoinColumn(name = "a_id"))
private List<EmbeddedClass> embeddedClass;
エンティティB:私は下のように2つのエンティティおよび埋め込みクラスを持っている :
しかし、これは私にHibernateMappingExeption
を与えることは、次の例を考えてみましょう
エンティティB@Embeddable
public class EmbeddableClass {
@ManyToOne
@JoinColumn(name = "b_id")
private B b;
私は取得していますエラーが下のようである使用しています
埋め込みクラス:私は正しく、はい場合は、これらのものを使用していた場合
org.hibernate.MappingException: Could not determine type for: app.model.B, at table: embeded_class_table, for columns: [org.hibernate.mapping.Column(b)]
は誰が提案してくださいでしたが、私は何が欠けていますか?
、私は問題が関係していると思います'EnbeddableClass'と' Entity B'は例外として次のように書かれています: '型:app.model.B、テーブル:embeded_class_table、カラム:[org.hibernate.mapping.Column(b)]' – OutOfMind
私の答えが変わった。あなたは同じことを続けましたか? –
これは動作します!ありがとう。しかし、どうして私は '(cascade = CascadeType.ALL)'を追加する必要があるのですか?私はこれを理解していません。 – OutOfMind