Hibernate--詳解Query物件 ( 分頁)
package com.itheima.b_api;
import java.util.Arrays;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Query;
import org.hibernate.SQLQuery;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.classic.Session;
import org.junit.Test;
import com.itheima.a_hello.User;
//詳解Query物件
public class Query_test {
@Test
//Query物件 封裝HQL語句的物件
//Query中封裝查詢細節api
public void fun1(){
//1載入配置
Configuration conf = new Configuration().configure();
//2 根據Configuration 配置資訊建立 SessionFactory
SessionFactory sf = conf.buildSessionFactory();
//3 獲得session
Session session = sf.openSession();
//開啟事務
Transaction ts = session.beginTransaction();
//--------------------------------------------------------
Query query = session.createQuery("from com.itheima.a_hello.User ");
//以前分頁 limit index(初始索引),count(查詢多少個);
//指定結果從第幾個開始拿
query.setFirstResult(0);
//指定拿幾個結果
query.setMaxResults(2);
//query.list() 將hql語句執行,並返回結果(多行)
List<User> list = query.list();
System.out.println(list);
//uniqueResult 將hql語句執行,並返回結果(一行) 。 多個結果的第一行返回
//User u = (User) query.uniqueResult();
//System.out.println(u);
//---------------------------------------------------------
//提交事務
ts.commit();
//關閉資源
session.close();
sf.close();
}
}