Hibernate的抱怨, 的版本號:Hibernate試圖更新所致只讀對象
java.lang.UnsupportedOperationException:在 org.hibernate.cache無法寫入只讀 對象。 ReadOnlyCache.lock(ReadOnlyCache.java:68)
對於具有@Cache(usage = CacheConcurrencyStrategy.READ_ONLY)
但未被修改的類。 Class A
具有通過註釋定義Class B
一個many-to-many
關係,
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
@MapKey(name = "abbreviation")
private Map<String, B> allBs;
我創造的Class A
一個新的對象,並將其與Class B
現有對象,但由於一些未知的原因,Hibernate試圖修改版本和lastmodified
時間關聯的Class B
。
如果我刪除READ_ONLY註釋它工作正常,並沒有理由的版本和B的最後修改日期被從加入表a_b
條目除了更新;
這是Hibernate做的事情 - 即使只添加了一個新的關聯並且對象本身沒有改變,也要寫入B?
我有同樣的問題,但是當我嘗試刪除註釋時,會生成錯誤。代碼無法運行。 –