我正在尝试使用jpa保存requestFactory发送的对象图。
@Entity
public class Product {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Key id;
@OneToMany(cascade = CascadeType.ALL)
private List<FareEntry> fares;
...
}
@Entity
public class FareEntry{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Key id;
@ManyToOne(fetch = FetchType.LAZY)
private Product product;
....
}
当我在客户端创建一个新的对象图并将其发送到服务器时,对象保存正常,但是当我将对象发送到客户端时,我修改了一些属性并将其发送回来再次保存(合并),删除一些子对象。
我到达服务器时检查对象,看看一切正常。我看到的唯一区别是当我发送一个新的图形对象时,子对象有id = null,当我发送一个修改过的图形对象时,子对象有一个有效的id。
requestFactory中所有对象的id都是String,用KeyFactory.KeyToString(...)创建Key的字符串表示。
有些想法出了什么问题?
我检查一下,如果我删除@OnaToMany声明,一切正常运行,持久化和修改对象图表确定,但JPA会持久保存新字段以进行排序。我不需要,我不想要这个字段,因为我的数据库有大约100.000条记录,我想最大限度地降低写入成本。
感谢您的帮助......
Ruben Leal