Hibernate 一对多关联配置
以Department和Employee为例。
Department类:
1. 测试cascade属性public void testQueryLazy() {Session s = null;s = HibernateUtil.getSession();Department depart = (Department) s.get(Department.class, 2);s.close();System.out.println(depart.getName());System.out.println(depart.getEmployees());}
a. 当fetch为select时:
如果lazy为true,hibernate用SELECT语句查询出Department。当访问Employee时才用SELECT语句查询Employee,如果这时session关闭,会导致异常。
如果lazy为false,hibernate用两个SELECT语句同时把Department和Employee查询出来。
b. 当fetch为join时:
不管lazy的取值,hibernate会进行连表查询,把两个实体都查询出来