我有这个Entity
,这是一个超类:
@Entity
public class Father implements Serializable{
@Column(name = "name")
@Size(min=1, max=10)
@Pattern(regexp="^[A-Za-z ]*$")
@NotNull
private String name;
}
这一个,扩展了上面的那个:
@Entity
public class FatherSub extends Father implements Serializable{
private String name;
}
正如您所见,FatherSub
我没有@Annotations
,我不想要它们。
我怎样才能覆盖它们?有办法吗?
似乎注释@NotNull
在子类中持续存在并要求我填写
你可以在这两张Eclipse版画画面中看到Father.name
(不是FatherSub.name
)。
谢谢
答案 0 :(得分:1)
注释(仅代表某些特定时间段的某些元信息)在拥有子类时不会过写。
在您的示例中,onCreate()
成员隐藏 FatherSub#name
成员。这意味着Father#name
的所有实例都将与FatherSub
中定义的name
一起使用,如果未使用FatherSub
进行注释,则不会代表@Column
@Column
注释
此外,您无需在Serializable
中明确实施FatherSub
,因为Father
已经实现了它。