hybris中的equals()和hashCode()重写
对于hybris中的equals()和hashCode()重写,hybris,Hybris,对于*-items.xml中的类型,是否有方法重写equals()和hashCode()方法?例如: <itemtype code="FaqParagraph" extends="GenericItem" autocreate="true" generate="true" jaloclass="com.training.core.jalo.FaqParagraph"> <deployment table="FaqPa
*-items.xml
中的类型,是否有方法重写equals()
和hashCode()
方法?例如:
<itemtype code="FaqParagraph" extends="GenericItem" autocreate="true" generate="true"
jaloclass="com.training.core.jalo.FaqParagraph">
<deployment table="FaqParagraph" typecode="20004"/>
<attributes>
<attribute qualifier="code" type="java.lang.String">
<modifiers initial="true" write="false" optional="false"/>
<persistence type="property"/>
</attribute>
</attributes>
</itemtype>
对于
FAQ段落模型
,是否有方法覆盖equals()
和hashCode()
?如果您的问题是关于生成的**模型实例,则不可能对hashCode
和equals有自定义实现。请注意,“生成的”实现将两个实例视为相等,如果它们具有相同的PK
,并且位于相同的tenant
是的,这是关于生成的模型实例。我知道如果它们有相同的主键,它们是相等的(请注意斜体),但我想知道如果没有覆盖equals()
和hashCode()
,为什么Set
可以正确工作。谢谢你的回答,也许你也可以帮我回答这个问题:)你所说的equals()
“正确工作”到底是什么意思?你的意思是如果集合元素具有相同的code
属性,它们就被认为是相等的吗?我的意思是set
集合为了在对象上正确工作,它们需要重写equals()
和hashCode()
方法,但是,生成的模型不会覆盖它们,而集合
会按预期工作。在java中,每个类的每个实例都有equals和hashcode的实现。基本实现(在Object
类中定义)认为两个对象完全相同时是相等的(即:两个变量分配给同一个对象)。对于Hybris实体,实现在AbstractItem中,它使PK相等。哦,好的,我现在明白了。非常感谢!:)