我有一个对象作为另一个对象的成员,比如说 Object1 和 Object 2。对象 2 在对象 1 中,并且有 3 个字段。
我从用户那里收到对象 1 的详细信息。还有来自用户的对象 2 的 ID 和名称,需要将 Object1 保存在数据库中,所以我使用 session.saveOrUpdate(object1),
但它会保存 object1 并保留用户提供的 object 2 的字段,并将其他字段更改为 NULL。
我应该通过 Object2 的所有字段来避免这个问题,还是有办法阻止休眠将这些字段更改为 NULL 并保留它们的值?
Object1
ID
name
@ManyToOne (cascade = CascadeType.ALL)
Object2
Object2
ID
name
age
例子
我在数据库中拥有什么
对象 2 的 ID =13 名称=XYZ 年龄=32
用户输入
对象 1 名称 = 杰克
对象 2 ID = 13 名称=XYZ
保存object1后,object2如下
Object2 ID = 13 名称=XYZ 年龄=NULL