用hibernate注解写了一个多对多的案例,为何中间表数据只插入了一部分?
@Test
public void test2(){
Session session = HibernateUtils.getSession();
Transaction tx = session.beginTransaction();
Teacher t1=new Teacher("T001","张老师");
Teacher t2=new Teacher("T002","李老师");
Teacher t3=new Teacher("T003","王老师");
Teacher t4=new Teacher("T004","胡老师");
//创建学生类
Student stu1=new Student(2,"男","java",new Date(),"lg");
Student stu2=new Student(1,"女","java",new Date(),"lr");
Student stu3=new Student(3,"男","java",new Date(),"zs");
Student stu4=new Student(4,"女","java",new Date(),"lh");
//创建教师集合
Set s1=new HashSet();
s1.add(t1);
s1.add(t2);
s1.add(t3);
Set s2=new HashSet();
s1.add(t1);
s1.add(t4);
s1.add(t3);
Set s3=new HashSet();
s1.add(t1);
s1.add(t2);
s1.add(t4);
Set s4=new HashSet();
s1.add(t3);
s1.add(t2);
s1.add(t4);
stu1.setTeachers(s1);
stu2.setTeachers(s2);
stu3.setTeachers(s3);
stu4.setTeachers(s4);
session.save(t1);
session.save(t2);
session.save(t3);
session.save(t4);
session.save(stu1);
session.save(stu2);
session.save(stu3);
session.save(stu4);
tx.commit();
session.close();
} |
免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。
版权声明:作者保留权利,不代表天盟立场。
|
|
|
|
Sets1=newHashSet();s1.add(t1);//这边是S1s1.add(t2);//这边是S1s1.add(t3);//这边是S1Sets2=newHashSet();s1.add(t1);//这边是S1,这边不应该是s2.add(t1)?依次类推s1.add(t4);//这边是S1s1.add(t3);//这边是S1Sets3=newHashSet();s1.add(t1);//这边是S1s1.add(t2);//这边是S1s1.add(t4);//这边是S1Sets4=newHashSet();s1.add(t3);//这边是S1s1.add(t2);//这边是S1s1.add(t4);//这边是S1 |
|
|
|
|