一个类扩展了另一个类。
这两个类都将在数据库中持久化。
@Entity
@Table(name="Questions")
@Access(value = AccessType.FIELD)
public class Questions implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
//@Access(value= AccessType.FIELD)
private String q_Id;
@Column(name="q_type")
private String q_Type;
@Column(name="q_lang")
private String q_lang;
@Access(value = AccessType.PROPERTY)
public String getQ_Type() {
return q_Type;
}
public void setQ_Type(String q_Type) {
this.q_Type = q_Type;
}
@Id
@Column(name="q_Id")
@GeneratedValue(generator = "uuid2")
@GenericGenerator(name = "uuid2", strategy = "uuid2")
@Access(value = AccessType.PROPERTY)
public String getQ_Id() {
return q_Id;
}
public void setQ_Id(String q_Id) {
this.q_Id = q_Id;
}
@Access(value = AccessType.PROPERTY)
public String getQ_lang() {
return q_lang;
}
public void setQ_lang(String q_lang) {
this.q_lang = q_lang;
}
}
英国电信级
@Entity
@Table(name="BT")
@Access(value = AccessType.FIELD)
public class BT extends Questions implements Serializable{
private static final long serialVersionUID = 1L;
@Access(value = AccessType.FIELD)
// @Id
// @Column(name="q_Id")
private String q_Id;
@Access(value = AccessType.PROPERTY)
public String getQ_Id() {
return q_Id;
}
public void setQ_Id(String q_Id) {
this.q_Id = q_Id;
}
// @OneToOne(cascade = CascadeType.ALL)
// @PrimaryKeyJoinColumn
// @JoinColumn(name="q_id")
// @MapsId
private Questions question;
public Questions getQuestion() {
return question;
}
public void setQuestion(Questions question) {
this.question = question;
}
}
我的一个用例是
问题和BT将分别保存到MySQL中相应的表中(问题表和BT表)。
这两个表都有一个主键Id,我的DAO类将首先在Questions表中插入,并为BT类使用相同的Id,BT类随后将插入BT表。