Session session=HibernateUntil.getSessionFactory().openSession();
Transaction tx=session.beginTransaction();
//Query
//1.setter方法 【from后面不是表名,是实体类名字】
/*String hql="from User1 where id= :userAge";
Query query=session.createQuery(hql);
query.setInteger("userAge", 1);//根据名称设置Interger类型的属性
List<User1> users=query.list();//执行查询语句,返回list类型查询结果
System.out.println(users.size());
for (int i = 0; i < users.size(); i++) {
System.out.println(users.get(i).toString());
}*/
//下面举例,如何根据位置设置参数
/*Query query1=session.createQuery("from User1 where id=?");
query1.setInteger(0, 1);
List<User1> users1=query1.list();//执行查询语句,返回List类型的结果
System.out.println(users1.size());
for (int i = 0; i < users1.size(); i++) {
System.out.println(users1.get(i).toString());
}*/
//2.函数list()用于执行查询语句,查询结果以集合返回
//3.iterator()方法,用于执行查询语句,返回的结果是一个Integer,在读取是只能按照顺序方式读取
//仅仅把使用到的数据转换成Java对象,缺点只能按照顺序读取
/*Query query =session.createQuery("from User1");
Iterator iter=query.iterate();*/
//遍历结果集
/*while(iter.hasNext())
{
User1 user =(User1) iter.next();
System.out.println(user.toString());
}
*/
// 4.uniqueResult()方法 用与返回唯一的结果
//在确保最多只有一天记录满足查询条件的时候可以使用该方法
/*Query query=session.createQuery("from User1 where id=1");
User1 user=(User1) query.uniqueResult();//执行查询语句,直接将查询结果转换成Usre对象
System.out.println(user);*/
// 5.executeUpdate()方法,是Hibernate3的新特性,可以更新和删除操作
/*Query query1=session.createQuery("update User1 set password=? where id=?");
query1.setString(0, "jj");
query1.setInteger(1, 1);
query1.executeUpdate();//执行修改语句
*/
//使用方法五 删除操作
/*Query query2=session.createQuery("delete User1 where id< 2");
query2.executeUpdate();*/
//6.setFirstResult()和setMaxResult()方法结合使用,来实现分页功能
// setFirstResult() 可以设置所获取的第一个记录的位置
// setMaxResult()设置结果集的最大记录数
Query query=session.createQuery("from User1");//创建QUery实例
int currentPage=6;//当前页数
int pageSize=2;//设置每页记录数
query.setFirstResult((currentPage-1)*pageSize);//设置起始位置
query.setMaxResults(pageSize);
List users=query.list();
for (int i = 0; i < users.size(); i++) {
System.out.println(users.get(i).toString());
}
//查询的条数超过记录数,返回空集合
tx.commit();
HibernateUntil.shutdown();//关闭session实例
Hibernate-----Query接口的常用方法
最新推荐文章于 2024-07-27 18:40:58 发布