005---query接口初步
Query session.createQuery(String hql)方法;
* hibernate的session.createQuery()方法是使用HQL(hibernate的查询语句)语句查询对象的。
* hql:是查询对象的,例如:"from User",其中from不区分大小写,而User是区分大小写,因为它是对象。是User类
* 返回Query对象。
* 执行这条语句后,Hibernate会根据配置文件中所配置的数据库适配器自动生成相应数据库的SQL语句。如:
Hibernate: select user0_.id as id0_, user0_.name as name0_, user0_.password as password0_, user0_.createTime as createTime0_, user0_.expireTime as expireTime0_ from User user0_
Query的分页查询:
完整代码如下:
public void testQuery1(){ Session session = null; try { session = HibernateUtils.getSession(); session.beginTransaction(); Query query = session.createQuery("from User"); // 分页查询 query.setFirstResult(0);//从哪一条记录开始查询,是从0开始计算 query.setMaxResults(2);//分页每页显示多少条记录。 /* * Query对象中有一个list()方式,将所有查询来的对象自动生成list对象返回。 */ List userList = query.list(); //然后我们就可以显示数据了。 for (Iterator iter = userList.iterator();iter.hasNext();){ User user = (User)iter.next(); System.out.print(user.getId() + " "); System.out.println(user.getName()); } session.getTransaction().commit(); } catch (HibernateException e) { e.printStackTrace(); session.getTransaction().rollback(); } finally { HibernateUtils.closeSession(session); } }