武汉北大青鸟武汉宏鹏鲁广校区java技术讲座之java技术中Hibernate的多对一/一对多关系的初级问题。
有两张表, 一张班级表(T_class),一张学生表(T_student).
学生类:省略get/set方法
Java code
public class Student {
private Integer studentId;
private String studentName;
private Classes classes;
}
班级类:省略get/set方法
Java code
public class Classes{
private Integer classId;
private String className;
private Set students = new HashSet();
}
Student.hbm.xml
XML code
column="student_name" />
outer-join="true" class="wxm.beans.Classes" />
Classes.hbm.xml
XML code
column="class_name" />
学生和班级是多对一关系,班级和学生是一对多关系,是否两个XML都要写上他们的关系呢?
另外一个问题是关于cascade的
@Test
public void save() {
Classes claz = new Classes("英语班");
classService.addClass(claz);
Student student = new Student("王小二");
student.setClasses(classService.getClass(1));
student.setPerform(55.5f);
studentService.addStudent(student);
}
cascade=ALL的时候上面这段代码是不成功的。还麻烦大神解释下。
另外删除cascade成功保存之后,要删除班级而不得。
@Test
public void delClass() {
classService.getClass(1).getStudents().remove(
studentService.getStudent(1));
classService.delClass(1);
}
想删除班级不是把班级内的学生清空,再删除就OK了吗,可是并不行。
更多java技术讲座请关注武汉北大青鸟官网,报名热线:17740513250
本文标题:java技术之Hibernate的多对一/一对多关系的初级问题,责任编辑:宏鹏,来源:武汉北大青鸟鲁广校区栏目,于2012-07-26 15:33:04发布于北大青鸟鲁广校区。武汉北大青鸟武汉宏鹏鲁广校区java技术讲座之java技术中Hibernate的多对一/一对多关系的初级问题。 有两张表, 一张班级表(T_class),一张学生表(T_student). 学生类:省略get/set方法 Java co
预约将免费领取7天课程体验卡
只为您方便就学
专业老师24小时1对1学习指导
定制专属于你的专属学习方案
微信号:17740513250
微信号:17740513250