使用hibernat的qbc进行多表内联操作。Emp是一个员工实体类,他有一个部门属性“dept”,在数据库中对应的是部门表的主键,
Session session = HibernateSessionFactory.getSession();
Criteria c = session.createCriteria(Emp.class);
c.createCriteria("dept");//内联
//设置查询条件
List list = c.addOrder(Property.forName("empno").desc())//倒序排列,“empono”这个属性是数据库中的主键
.setFirstResult(0)//开始显示的记录的下表
.setMaxResults(5)//显示的记录数
.list();
for(int i = 0 ; i < list.size(); i ++){
Emp emp = (Emp)list.get(i);
//打印查询出来的记录
System.out.println(emp.getEmpno() + "/t" + emp.getEname() + "/t" + emp.getDept().getDname());
}
HibernateSessionFactory.closeSession();