0
我問了一個類似的question here,但現在我縮小了這個問題。休眠似乎沒有看到反序列化對象上的變化
所以總結一下:我有Person對象與幾個電話號碼被保存並保存到數據庫。
好。然後我對一些電話號碼進行了更改,將整個Person對象序列化,通過jms發送給一些後端服務,將其反序列化並保存。 看來,由於序列化 - 反序列化,PhoneNumbers集上的更改不會被Hibernate拾起。
class Person
{
@OneToMany(mappedBy = "person", cascade={CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REMOVE})
@Cascade({org.hibernate.annotations.CascadeType.DELETE_ORPHAN,org.hibernate.annotations.CascadeType.SAVE_UPDATE})
private Set<PhoneNumber> phoneNumbers = new HashSet<PhoneNumber>();
//.... omitted ....
}
class PhoneNumber
{
@ManyToOne(optional = false)
private Person person;
//... omitted ...
}