Hibernate學習之路(七)
阿新 • • 發佈:2017-07-15
oid bject 需要 .com build action logs 結果 gin
hql:hibernate query language hibernate查詢語言
1、單屬性查詢
1 public void testQuery1(){ 2 //通過Configuration對象創建SessionFactory對象 3 SessionFactory sf = new Configuration().configure().buildSessionFactory(); 4 //創建Session對象 5 Session s = sf.openSession(); 6 //開啟事務 7s.beginTransaction(); 8 9 //我們只需要關註這裏的事務。 10 String sql = "select name from Student"; 11 Query query = s.createQuery(sql); 12 //返回結果類型,根據查詢的列決定 13 List<String> names = query.list(); 14 for(String name: names){ 15 System.out.println(name);16 } 17 //提交事務 18 s.getTransaction().commit(); 19 //關閉Session 20 s.close(); 21 //關閉SessionFactory 22 sf.close(); 23 }
2、多個屬性查詢
1 public void testQuery1(){ 2 //通過Configuration對象創建SessionFactory對象 3 SessionFactory sf = new Configuration().configure().buildSessionFactory();4 //創建Session對象 5 Session s = sf.openSession(); 6 //開啟事務 7 s.beginTransaction(); 8 9 //我們只需要關註這裏的事務。 10 String sql = "select name,age from Student"; 11 Query query = s.createQuery(sql); 12 //返回結果類型,根據查詢的列決定 13 List<Object[]> list = query.list(); 14 for(Object[] objs: list){ 15 System.out.println(objs[0]+"---"+objs[1]); 16 } 17 //提交事務 18 s.getTransaction().commit(); 19 //關閉Session 20 s.close(); 21 //關閉SessionFactory 22 sf.close(); 23 }
3、查詢所有列
1 public void testQuery1(){ 2 //通過Configuration對象創建SessionFactory對象 3 SessionFactory sf = new Configuration().configure().buildSessionFactory(); 4 //創建Session對象 5 Session s = sf.openSession(); 6 //開啟事務 7 s.beginTransaction(); 8 9 //我們只需要關註這裏的事務。 10 String sql = "from Student"; 11 Query query = s.createQuery(sql); 12 //返回結果類型,根據查詢的列決定 13 List<Student> list = query.list(); 14 for(Student stu: list){ 15 System.out.println(stu); 16 } 17 //提交事務 18 s.getTransaction().commit(); 19 //關閉Session 20 s.close(); 21 //關閉SessionFactory 22 sf.close(); 23 }
4、條件查詢
1 public void testQuery1(){ 2 //通過Configuration對象創建SessionFactory對象 3 SessionFactory sf = new Configuration().configure().buildSessionFactory(); 4 //創建Session對象 5 Session s = sf.openSession(); 6 //開啟事務 7 s.beginTransaction(); 8 9 //我們只需要關註這裏的事務。 10 String sql = "from Student where id<?"; 11 Query query = s.createQuery(sql); 12 query.setParameter(0, 2); 13 //返回結果類型,根據查詢的列決定 14 List<Student> list = query.list(); 15 for(Student stu: list){ 16 System.out.println(stu); 17 } 18 //提交事務 19 s.getTransaction().commit(); 20 //關閉Session 21 s.close(); 22 //關閉SessionFactory 23 sf.close(); 24 }
5、分頁查詢
1 public void testQuery1(){ 2 //通過Configuration對象創建SessionFactory對象 3 SessionFactory sf = new Configuration().configure().buildSessionFactory(); 4 //創建Session對象 5 Session s = sf.openSession(); 6 //開啟事務 7 s.beginTransaction(); 8 9 //我們只需要關註這裏的事務。 10 String sql = "from Student"; 11 Query query = s.createQuery(sql); 12 query.setFirstResult(0); 13 query.setMaxResults(5); 14 //返回結果類型,根據查詢的列決定 15 List<Student> list = query.list(); 16 for(Student stu: list){ 17 System.out.println(stu); 18 } 19 //提交事務 20 s.getTransaction().commit(); 21 //關閉Session 22 s.close(); 23 //關閉SessionFactory 24 sf.close(); 25 }
Hibernate學習之路(七)