请问java高手,hibernate的reverse在一的一方已经设置为true,为什么保存一的一方时,还会保存多方啊?
比如,teacher为1方,student为多方,关联设置为
<!-- -->
SEQ_TEST
<!-- 多方关联到1方的列 -->
。。。
<!-- cascade="all" -->
<!-- 此处还是1方关联到多方的列 -->
java代码为:
Teacher t1 = new Teacher();
Student s1= new Student();
s1.setName("xiaomm1");
Student s2= new Student();
s2.setName("xiaomm2");
t1.setName("ttt1");
Set<Student> sts =new HashSet<Student>();
sts.add(s1);
sts.add(s2);
t1.setStudents(sts);//老师关联学生
Configuration cf=new Configuration().configure();
SessionFactory sf = cf.buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
session.save(t1);//只保存老师
运行结果为,老师和学生都保存了,只是student的teacher_id为空而已,不是说一的方reverse=true,保存一方时,不操作多的一方的数据库吗?
请高手指点,感激不尽了