实际上问题在标题中。
实体将为系统中的不同对象(博客节点,评论等)映射注释
所以我希望能够使用这个列(读取它的值,用于为特定类型的Commented对象类型构建注释树。
另外,我想在@DiscriminatorColumn
和equals
方法中添加hashcode
这样做的最佳方式是什么?
答案 0 :(得分:0)
当您加载实体时,此问题就出现了,鉴别器值始终为null。因此,如果你尝试在equals中添加鉴别器值,你可能会得到空指针,所以有两种方法: -
insert="false" update="false"
到该属性,这将使您的属性只读,然后对于该属性,您可以将等号放入。 例如: -
private String tempDiscriminatorValue;
<property name="tempDiscriminatorValue" type="string" column="DISCR_VAL" insert="false" update="false"/>
答案 1 :(得分:0)
DiscriminatorColumns用于继承,A类的实例隐含不等于B类,所以我不明白为什么要这样做?
equals()通常会执行a,
if (object instanceof Foo) {
return ...
} else {
return false;
}