我有两个班A& B,B扩展A和A是@MappedSuperclass,因为它被其他实体扩展为一些公共字段。
A类
@MappedSuperclass
public class A implements Serializable {
@Column(name="TYPE_ID")
private String type;
@Column(name="FEATURE_CODE")
private String featureCode;
}
B类
public class B extends A implements Serializable {
@Column(name="ID")
private String id;
@Column(name="GROUP")
private String group;
}
现在的问题是,当我试图坚持B类时,它将 TYPE_ID 和 FEATURE_CODE 纳入INSERT查询和目标数据库表表B < / strong>没有列 FEATURE_CODE 会导致异常。
在持久化子实体B的同时,有没有人能指出我如何忽略FEATURE_CODE字段? 谢谢!
答案 0 :(得分:0)
@MappedSuperclass需要一个构造函数及其get和set。和你的班级,B,..
必须在数据库中包含A列,如果使用hibernate进行,则应自动创建它们,但如果手动执行,则必须在B表中创建A的列