私はこの関係を1対多にしています。これは私の1つのテーブルです。
private Set<Images> imagesContainer = new HashSet<Images>(0);
@OneToMany(fetch = FetchType.LAZY, mappedBy = "container")
public Set<Images> getImagesContainer() {
return this.imagesContainer;
}
public void setImagesContainer(Set<Images> imagesContainer) {
this.imagesContainer = imagesContainer;
}
そして、これは私の多くのテーブルです:
private Container container;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "id_container", nullable = false)
public Container getContainer() {
return this.container;
}
public void setContainer(Container container) {
this.container = container;
}
Hibernateを使用して、多くのコンテナーを含む新しいコンテナーを挿入するにはどうすればよいですか。私はこれを試してみます:
...
Set<Images> images=new HashSet<Images>();
images.add(img1);
images.add(img2);
Container c = new Container();
c.setImagesContainer(images);
....
@Override
@Transactional(propagation=Propagation.REQUIRED)
public void save(Container c){
getHibernateTemplate().save(c);
}
働かないで!「ネストされた例外はorg.hibernate.exception.DataException:挿入できませんでした:...」というメッセージが表示されました。