我有以下要插入和更新的代码:
List<Abfragen> abfragenListe = new ArrayList<Abfragen>();
abfrage = new Abfragen();
abfrage.setDatum(new Date());
abfrage.setGesuchtNach(suchfeld);
abfragenListe.add(abfrage);
em.persist(abfrage);
benutzer.setAbfragen(abfragenListe);
em.merge(benutzer);
我的实体看起来像这样:
@OneToMany(cascade = CascadeType.ALL)
@JoinColumn(referencedColumnName = "id", name = "BENUTZERID")
private List<Abfragen> abfragen;
我现在的问题是,如果我插入一个新的&#39; Abfrage&#39;并合并“benutzer”#39;只有最后一个插入在我的DBMS的referencColumn中有一个id,如图所示。那我的错是什么? THX
答案 0 :(得分:0)
您的benutzer.setAbfragen(abfragenListe);
来电正在用新的Abfragen替换引用的Abfragen实例的集合。您似乎想要将Abfragen实例添加到现有集合中,而不是清除集合。使用
benutzer.getAbfragen().add(abfrage);
代替。