Hibernate关联关系映射之多对多关联关系(二)

2014-11-24 07:47:56 ? 作者: ? 浏览: 9
(); System.out.println(s.getName()); } tran.commit(); } catch (Exception e) { tran.rollback(); } } // 解除关联关系 @org.junit.Test public void RemoveRelation() { session = HibernateSessionFactory.getSession(); tran = session.beginTransaction(); try { Student s = (Student) session.get(Student.class, 1l); Teacher teacher = (Teacher) session.get(Teacher.class, 1l); // 如果Teacher的inverse属性为false可以解除,如果为true不可以解除 teacher.getStudents().remove(s); tran.commit(); } catch (Exception e) { tran.rollback(); } } // 删除关联关系 @org.junit.Test public void DeleteRelation() { session = HibernateSessionFactory.getSession(); tran = session.beginTransaction(); try { Teacher teacher = (Teacher) session.get(Teacher.class, 2l); // 当teacher的inverse属性为false时,可以将教师信息删除,并且将中间表中相关记录删除 // 当inverse属性为true时将教师信息删除时抛出异常 session.delete(teacher); tran.commit(); } catch (Exception e) { tran.rollback(); } } }


-->

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: