【发布时间】:2019-05-19 23:09:49
【问题描述】:
我们有两个表student 和mark。我们可以在普通的select 查询中使用studentid 连接这些表:
select * from student st,mark mk where st.studentId=mk.studentId
如何创建条件查询来获取详细信息?
Student 的实体类是:
@Entity
@Table(name = "student")
public class Student{
private int studentId;
private String name;
@Column(name = "studentId")
public int getStudentId() {
return studentId;
}
public void setStudentId(String studentId) {
this.studentId = studentId;
}
@Column(name = "name")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Mark 的实体类是:
@Entity
@Table(name = "mark")
public class Mark{
private int markId;
private int studentId;
private String name;
private String mark
@Column(name = "markId")
public int getMarkId() {
return markId;
}
public void setMarkId(String markId) {
this.markId = markId;
}
@Column(name = "studentId")
public int getStudentId() {
return studentId;
}
public void setStudentId(String studentId) {
this.studentId = studentId;
}
@Column(name = "markId")
public int getMarkId() {
return markId;
}
public void setMarkId(String markId) {
this.markId = markId;
}
@Column(name = "name")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Column(name = "mark")
public String getMark() {
return mark;
}
public void setMark(String mark) {
this.mark = mark;
}
}
【问题讨论】:
-
不应该使用@OneToMany 将标记映射为学生中的列表吗?此外,应使用 @ManytoOne 在 Mark 中映射 Student。
-
你试过的JPA Criteria代码在哪里?
标签: hibernate jpa criteria hibernate-criteria