2014-11-03 51 views
1

我是Spring中Hibernate和JPA的新手,所以这可能是一个初学者错误。我无法坚持与其关联的对象。Hibernate jpa子对象不保存

例如:

Dog dog = new Dog(); 
Breed breed = dao.getBreedById(1); (gets persistent object) 

dog.setName("Pluto"); 
dog.setBreed(breed); 

save(dog); 

狗和各个领域的保存,但该品种的关联并不在数据库中保存。我没有得到任何错误。它只是不保存。任何人都知道我在做什么错了?

我把这个问题追溯到一个已经存在的注释......这让我在之后碰到了自己。 -.-

我:

@ManyToOne(fetch = FetchType.EAGER) 
@JoinColumn(name = "breed_id", insertable = false, updatable = false) 
private Breed breed; 

叹息。删除可插入和可更新的条款解决了问题。

+0

也许提到什么“保存”会有帮助??!并提及日志中的内容 – 2014-11-03 16:11:17

回答

1

将狗存入数据库。如果你想要的是养殖狗,你也应该手动设置。没有自动关系在JPA

Dog dog = new Dog(); 
Breed breed = dao.getBreedById(1); (gets persistent object) 

dog.setName("Pluto"); 
dog.setBreed(breed); 
breed.getDogCollection.add(dog);//you have to maintain relationship manually 

save(dog); 
+0

我实际上将问题追溯到一个稍微不同的问题,但感谢您的快速回复! – rcheuk 2014-11-03 18:08:23

+0

所以如果问题是别的,为什么不自己添加答案,而不是接受不是答案的东西? – 2014-11-04 08:13:02

相关问题