场景:多个学生对应一个班级(典型的多对一关系)
创建Student 实体类
package com.sosoyo.mtofk;
import java.sql.Blob;
import java.util.Date;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;
import com.sosoyo.dfk.IdCard;
/**
* @author 24315 学生类
*/
@Entity //实体类必须的注解,对应一个学生表
public class Student {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)//使用数据库的自动增长主键策略,前提是类型是整形
private int sid;
private String sname;
private String gender;
private Date birthday;
private String major;
@ManyToOne(cascade=CascadeType.ALL,fetch=FetchType.EAGER)//多个学生对应一个班级,cascade规定了级联操作,ALL包括添加、修改、删除操作
@JoinColumn(name="cid",referencedColumnName="CID")//name是映射到数据库的名称,referencedColumnName指向被控类中主键属性的名称
private ClassRoom classRoom;
public Student() {
}
public Student( String sname,String gender, Date birthday,String major ) {
this.sname = sname;
this.gender = gender;
this.birthday = birthday;
this.major = major;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = bir