我有CompositUserType的不可变实现。setPropertyValue
方法被覆盖:
@Override
public void setPropertyValue(final Object component, final int property, final Object value)
throws HibernateException {
throw new HibernateException("Object is immutable.");
}
isMutable
方法也被覆盖:
@Override
public boolean isMutable() {
return false;
}
在Hibernate版本5.6.12之前,一切正常,但在更新后,看起来像是在调用setPropertyValue
方法,即使isMutable
返回false。
有没有人知道在更新的版本中更改了什么,以及使用CompositeUserType和不可变类的正确方法是什么?
我试着看了一下更改日志,但没有找到任何合理的解释。
1条答案
按热度按时间vnjpjtjt1#
根据以下信息,它似乎是5.6.11版中引入的错误。此错误将在5.6.13版中修复:https://in.relation.to/2022/11/03/hibernate-orm-5613/