是否可以
让父抽象类说"人类",同时需要"name"和"phone"(不可为空),然后用另一个实体说"Man"进行子类化,并使"phone"字段为空?
我在文档中找不到这个,所以要么很容易,要么做不到。我问它是因为我有一个有点大的实体,而我的子实体只使其中几个字段成为必填字段。创建一个全新的类并打破继承将是一种痛苦。
PD:相反的情况也适用于我:让所有字段都为空,并且只在子实体中制作我真正想要的字段。
如果 Human 是 MappedSuperClass,则可以使用 AttributeOverride
Man:
type: entity
attributeOverride:
phone:
nullable: false
并带有注释:
@AttributeOverrides({
@AttributeOverride(
name="phone",
column=@Column(nullable=false)
)
})