1、查詢所有的學生信息:
(1)查詢結果中,一條信息放入到一個數組中,從list集合中取出數組,並對數組進行遍歷。
public class GeneratorTest { public static void testSel() { Session session = HibernateUtils.openSession(); Transaction transaction = session.beginTransaction(); String sql="Select * from Student"; SQLQuery sqlQuery=session.createSQLQuery(sql); List<Object[]>list= sqlQuery.list(); for(Object[] objects:list){ System.out.println(Arrays.toString(objects)); } System.out.println(list); transaction.commit(); session.close(); }
(2)直接封裝到學生對象中,將對象存儲到list集合:
public static void testSel() { Session session = HibernateUtils.openSession(); Transaction transaction = session.beginTransaction(); String sql="Select * from Student"; SQLQuery sqlQuery=session.createSQLQuery(sql); sqlQuery.addEntity(Student.class); List<Student>list= sqlQuery.list(); System.out.println(list); transaction.commit(); session.close(); }
2、占位符的使用:
public static void testSel() { Session session = HibernateUtils.openSession(); Transaction transaction = session.beginTransaction(); String sql="Select * from Student where sex=?"; SQLQuery sqlQuery=session.createSQLQuery(sql); sqlQuery.setParameter(0,"女"); sqlQuery.addEntity(Student.class); List<Student>list= sqlQuery.list(); System.out.println(list); transaction.commit(); session.close(); }
3、分頁查詢:
public static void testSel() { Session session = HibernateUtils.openSession(); Transaction transaction = session.beginTransaction(); String sql="Select * from Student limit ?,?"; SQLQuery sqlQuery=session.createSQLQuery(sql); sqlQuery.setParameter(0,0); sqlQuery.setParameter(1,1); sqlQuery.addEntity(Student.class); List<Student>list= sqlQuery.list(); System.out.println(list); transaction.commit(); session.close(); }