エンティティの状態についてはまだ完全に明確ではなく、次の状況に関していくつかのことを試してみましたが失敗しました:
@Entity
public class Foo {
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "id", nullable = false)
private long id;
/* other fields */
@NotNull
@ManyToOne
@JoinColumn(name = "related_bar", nullable = false)
private Bar bar;
/* getters & setters */
}
@Entity
public class Bar {
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "id", nullable = false)
private long id;
/* other fields & methods*/
}
通常、データが Foo 作成フォームから送信されると、関連するバーの ID が送信されます (ただし、他の属性ではなく、そこでは使用されません)。新しい Foo を永続化するときに ID が設定されている Bar インスタンスをアタッチする (永続化しない) ようにエンティティ マネージャーに自動的に指示する方法はありますか?
よろしくお願いします。
ロルフ