2017-08-03 9 views
3

私はこのような定義されたエンティティの列を持っている:私はこのエンティティタイプの値を保持しようとするカスケード「@Any」関係

@Any([email protected](name="index_type"),fetch=FetchType.EAGER,optional=false) 
@AnyMetaDef(idType="java.util.UUID", metaType="string", metaValues={ 
    @MetaValue(targetEntity=LocalPodcast.class, value="Local"), 
    @MetaValue(targetEntity=RSSPodcast.class, value="RSS") 
}) 
@JoinColumn(name="index_id",columnDefinition="CHAR(36)") 
private PodcastIndex index; 

、関連付けられたインデックスが永続化されていません。私はこれが自動的に起こるようにしたいと思います。他の関係では、私は通常、関係を定義するアノテーションにcascade=CascadeType.ALLを使用しましたが、@Anyアノテーションにカスケードフィールドはありません。この関係を自動的にカスケードにするにはどうすればよいですか?私はHibernate 5を使用しています。

+1

私はアノテーション '@Cascade(org.hibernate.annotations.CascadeType.ALL)'を追加する必要があると思います。 – soorapadman

+0

@soorapadman - ああ、私はカスケードを定義するための別個の注釈があることに気付かなかった。はい、それはやり方です。 :) – Jules

答えて

2

cascadingのための別個の注釈があります。だから使えます

@Cascade(org.hibernate.annotations.CascadeType.ALL) 
関連する問題