我想你可以写一个抽象的超类的所有列映射这样的:
@MappedSuperclass
public abstract class AbstractModel {
protected int id;
protected String property1;
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "ID_SEQ")
@Column(name = "id")
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@Column(name = "prop1")
public String getProperty1() {
return property1;
}
public void setProperty1(String property1) {
this.property1 = property1;
}
}
然后写具体型号:
@Entity
@Table(name = "AB")
public class AB extends AbstractModel {
//some additional fields if you wish
private String property2;
@Column(name = "prop2")
public String getProperty2() {
return property2;
}
public void setProperty2(String property2) {
this.property2 = property2;
}
//additional code here
}
因此,所有的字段映射应该被继承。 希望这会有所帮助