Hibernate的查询方式具有面向对象的思想,在查询的时候,都是动过gei(id)的方式查询一条数据,然后Hibernate自动设置进去到POJO类对象,返回一个代理类给我们。
学生类:
[java] view plain copy
- public class Student {
- private int sId;//学生的id
- private int tId;//教师的id
- private String sName;//学生的姓名
- private String sSex;//学生的性别
- //省略get,set方法,无参构造方法,有参构造方法
- }
教师类:
[java] view plain copy
- public class Teacher {
- private int tId;//教师的id
- private String tName;//教师的姓名
- //同样,省略get,set方法,无参构造方法,有参构造方法
- }
这里有学生和教师两个类,同时映射数据库中学生表和教师表,如果我们想要拿到这两个表的数据,那么我们可以
hql=“select s.sId,s.sName,s.sSex,t.tId,t.tName from Student s,Teacher t where s.tId=t.tId ”,用Query类执行这句hql语句,调用query.list()得到一个list集合,注意这个list集合里存放的都是Object[]。
[java] view plain copy
- String hql="select s.sId,s.sName,s.sSex,t.tId,t.tName from Student s,Teacher t where s.tId=t.tId";
- Query q=session.createQuery(hql);
- List<Object> list=q.list();