一对多关联映射(one-to-many 单向)一、对象模型在对象模型中一对多关联映射,通常在一的一端要使用集合来表示关联关系。比如班级-->学生就是一个典型的一对多的关系。说明:之所以在一的一端需要持有对多的一端集合引用,是为了方便在加载班级的时候同时加载对应班级下面的学生。二、原理【实现原理】先有班级[one]后有学生[many],实现一对多需要在多的一端建立外键指向一的端one-to-many 单向:就是能从 Cleasses 中访问到对应的学生,反之无效.三、面试题【面试题】多对一与一对多的区别与联系?一对多关联映射利用了多对一关联映射原理多对一关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是多指向一(Person---Group)一对多关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是一指向多(Classes---Students)总结:也就是说一对多和多对一的映射策略是一样的,只是角度不同四、业务模型(实体类)ClassesPOJO.javaprivate int id;private String name;private Set students; //一指向多StudentPOJO.javaprivate int id;private String name;五、配置文件(1)一的一端(Classes.hbm.xml)的配置:需要加入
标签(2)多的一端(Student.hbm.xml)的配置://ID自动增长六、代码测试(1)save 操作()存储策略:因为在Classes 实体类(One)中存在一个对Student 实体类的Set 集合引用,所以要先存 Student对象,然后在为 Student 分配班级。public void testSave1() {Session session = null;try {session = HibernateUtils.getSession();session.beginTransaction();//创建学生1Student student1 = new Student();st...