0
假設實體類Foo和Bar這樣的:什麼級聯使用,只保存多對多映射的孩子列表?
class Foo {
@ManyToMany
@JoinTable(name = "FooBar",
joinColumns = @JoinColumn(name = "foo"),
inverseJoinColumns = @JoinColumn(name = "bar"))
public List<Bar> getBars() {
return bars;
}
}
class Bar {
// ...
}
當我保存一個Foo實體,我要救酒吧名單也不過才映射列表,例如:
Bar oldBar = foo.getBars().get(0);
oldBar.setSomething("new-value"); // Change to the entity.
Bar newbar = new Bar();
foo.getBars().add(newbar); // Change to the list.
saveOrUpdate(foo);
我想saveOrUpdate
將更改保留到列表中,但不會更改爲實體。我可以嗎?
嗯,我不想改變oldBar,但它的屬性被觸動,所以也許變髒。它的'lastModifiedDate'由一些實用函數更新。 –
對。我所說的是,如果一個實體的持久性字段發生變化,那麼期望這些變化進入數據庫。如果它對於不應該在數據庫中出現的事情變得「骯髒」,那麼這是設計中更高層次的問題。 – Affe