@Table(name = "student")
public class Student {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private long id;
@Column(name = "roll_no", nullable = false)
private long rollNo;
@Column(name = "enrollment_no", nullable = false, unique = true)
private String enrollmentNo;
}
@Entity
@Table(name = "subject")
public class Subject {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private long id;
@Column(name = "subject_code", nullable = false, unique = true)
private String code;// course code
}
我有以上两个班级。我想为下面的数据库表student_marks(student_id,marks_id,marks,passing_status)创建一个StudentMarks类;
我尝试了这个
@Embeddable
public class StudentMarksId implements Serializable {
private Long studentId;
private Long subjected;
//getter and setter
}
@Entity
@Table(name = "student_marks")
public class StudentMarks implements Serializable {
private static final long serialVersionUID = 4428298147790767663L;
@EmbeddedId
@Id
@JoinColumns({
@JoinColumn(name = "subject_id", referencedColumnName = "id"),
@JoinColumn(name = "student_id", referencedColumnName = "id") })
private StudentMarksId id;
private List<Subject> subjects;
private List<Student> students;
@Column(name = "marks", nullable = false)
private int marks;
@Column(name = "passing_status", nullable = false)
private String passingStatus;// pass or fail
}```
I want to map student and subjects to student_marks.
1条答案
按热度按时间owfi6suc1#
有几种方法可以Map这一点。一个是:
另一种可能是将StudentMarksId也Map为实体中的嵌入式: