StockNDate と Datapoint の 2 つのクラスがあります。StockNDate は、DataPoint に組み込んだ埋め込みエンティティです。1 つの StockNDate を持つ 1 つのデータポイントのみが存在できるように設定したいと思います。@Column アノテーションを使用してみましたが、何もしないようです。私の質問は、Hibernate で 2 つのフィールドの一意のキーを取得する方法に非常に似ていますか? 、しかし、それを実装しようとするとコンパイル時にエラーが発生するため、Hibernate の以前のバージョン用に作成されたようです。Hibernate 4.1.9.Final を使用しています。
@Embeddable
public class StockNDate implements Serializable{
@ManyToOne
private Stock mParentStock;
@Type(type="org.jadira.usertype.dateandtime.joda.PersistentLocalDate")
private LocalDate mDate;
//snip...
}
public class DataPoint implements Serializable{
@Embedded
@Cascade(CascadeType.ALL)
@Column(unique = true) // THIS DOESN'T DO ANYTHING
private StockNDate mFingerPrint = new StockNDate();
//snip...
}