java hibernate 查询_(十)Hibernate 查询方式

所有项目导入对应的hibernate的jar包、mysql的jar包和添加每次都需要用到的HibernateUtil.java

第一节:Hibernate 查询方式简介

1,导航对象图查询方式;

2,OID 查询方式;

3,本地SQL 查询方式;

4,HQL 查询方式;

5,QBC 查询方式;(Query By Criteria)

第二节:本地SQL 查询方式

Student.java

1 packagecom.wishwzp.model;2

3 public classStudent {4

5 private intid;6 privateString name;7 private intage;8

9 public intgetId() {10 returnid;11 }12 public void setId(intid) {13 this.id =id;14 }15 publicString getName() {16 returnname;17 }18 public voidsetName(String name) {19 this.name =name;20 }21 public intgetAge() {22 returnage;23 }24 public void setAge(intage) {25 this.age =age;26 }27 @Override28 publicString toString() {29 return "Student [id=" + id + ", name=" + name + ", age=" + age + "]";30 }31

32 }

Student.hbm.xml

1 <?xml version="1.0"?>

2 "-//Hibernate/Hibernate Mapping DTD 3.0//EN"4 "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">

5

6

7

8

9

10

11

12

13

14

15

16

17

hibernate.cfg.xml

1 <?xml version='1.0' encoding='utf-8'?>

2 "-//Hibernate/Hibernate Configuration DTD 3.0//EN"4 "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

5

6

7

8

9

10

11 com.mysql.jdbc.Driver

12 jdbc:mysql://localhost:3306/hibernate

13 root

14 123456

15

16

17

18 org.hibernate.dialect.MySQL5Dialect

19

20

21 true

22

23

24 update

25

26

27

28

29

30

31

32

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Query;8 importorg.hibernate.Session;9 importorg.hibernate.SessionFactory;10 importorg.junit.After;11 importorg.junit.Before;12 importorg.junit.Test;13

14 importcom.wishwzp.model.Student;15 importcom.wishwzp.util.HibernateUtil;16

17 public classStudentTest {18

19 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();20 privateSession session;21

22 @Before23 public void setUp() throwsException {24 session=sessionFactory.openSession(); //生成一个session

25 session.beginTransaction(); //开启事务

26 }27

28 @After29 public void tearDown() throwsException {30 session.getTransaction().commit(); //提交事务

31 session.close(); //关闭session

32 }33

34 @Test35 public voidtestSQLQuery() {36

37 }38

39

40 }

运行结果生成了数据库信息:

8f108cdd86df394ceae4dcecbc6c6249.png

43c4d865eef72c3a82e7703a8ba6304f.png

我们插入一些数据:

5882c6c59572518852544e171fe03e39.png

再次写代码查询里面的数据:

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Query;8 importorg.hibernate.Session;9 importorg.hibernate.SessionFactory;10 importorg.junit.After;11 importorg.junit.Before;12 importorg.junit.Test;13

14 importcom.wishwzp.model.Student;15 importcom.wishwzp.util.HibernateUtil;16

17 public classStudentTest {18

19 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();20 privateSession session;21

22 @Before23 public void setUp() throwsException {24 session=sessionFactory.openSession(); //生成一个session

25 session.beginTransaction(); //开启事务

26 }27

28 @After29 public void tearDown() throwsException {30 session.getTransaction().commit(); //提交事务

31 session.close(); //关闭session

32 }33

34 @Test35 public voidtestSQLQuery() {36 String sql="select * from t_student";37 Query query=session.createSQLQuery(sql).addEntity(Student.class);38 List studentList=query.list();39 Iterator it=studentList.iterator();40 while(it.hasNext()){41 Student s=(Student)it.next();42 System.out.println(s);43 }44 }45

46 }

运行结果显示:

32a57b859fedc6f784c55438d2528efc.png

我们写一个带参数的查询语句查询:

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Query;8 importorg.hibernate.Session;9 importorg.hibernate.SessionFactory;10 importorg.junit.After;11 importorg.junit.Before;12 importorg.junit.Test;13

14 importcom.wishwzp.model.Student;15 importcom.wishwzp.util.HibernateUtil;16

17 public classStudentTest {18

19 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();20 privateSession session;21

22 @Before23 public void setUp() throwsException {24 session=sessionFactory.openSession(); //生成一个session

25 session.beginTransaction(); //开启事务

26 }27

28 @After29 public void tearDown() throwsException {30 session.getTransaction().commit(); //提交事务

31 session.close(); //关闭session

32 }33

34 @Test35 public voidtestSQLQuery2() {36 String sql="select * from t_student where stuName like :stuName and stuAge=:stuAge";37 Query query=session.createSQLQuery(sql).addEntity(Student.class);38 query.setString("stuName", "张%");39 query.setInteger("stuAge", 10);40 List studentList=query.list();41 Iterator it=studentList.iterator();42 while(it.hasNext()){43 Student s=(Student)it.next();44 System.out.println(s);45 }46 }47

48 }

运行结果显示:

2d2e677c50f5acd8a510ff71a7466b69.png

第三节:HQL 查询方式

HQL(Hibernate Query Language)是面向对象的查询语言;是使用最广的一种查询方式;

1,普通查询;

2,带条件查询;

3,使用别名;

4,对结果排序;

5,分页查询;

6,查询单个对象;

7,链式写法;

1,普通查询;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Query;8 importorg.hibernate.Session;9 importorg.hibernate.SessionFactory;10 importorg.junit.After;11 importorg.junit.Before;12 importorg.junit.Test;13

14 importcom.wishwzp.model.Student;15 importcom.wishwzp.util.HibernateUtil;16

17 public classStudentTest {18

19 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();20 privateSession session;21

22 @Before23 public void setUp() throwsException {24 session=sessionFactory.openSession(); //生成一个session

25 session.beginTransaction(); //开启事务

26 }27

28 @After29 public void tearDown() throwsException {30 session.getTransaction().commit(); //提交事务

31 session.close(); //关闭session

32 }33

34 @Test35 public voidtestHQLQuery() {36 String hql="from Student";37 Query query=session.createQuery(hql);38 List studentList=(List)query.list();39 Iterator it=studentList.iterator();40 while(it.hasNext()){41 Student s=(Student)it.next();42 System.out.println(s);43 }44 }45

46 }

运行结果显示:

d76fabb08a9af7a5800193e3e8132b5f.png

2,带条件查询;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Query;8 importorg.hibernate.Session;9 importorg.hibernate.SessionFactory;10 importorg.junit.After;11 importorg.junit.Before;12 importorg.junit.Test;13

14 importcom.wishwzp.model.Student;15 importcom.wishwzp.util.HibernateUtil;16

17 public classStudentTest {18

19 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();20 privateSession session;21

22 @Before23 public void setUp() throwsException {24 session=sessionFactory.openSession(); //生成一个session

25 session.beginTransaction(); //开启事务

26 }27

28 @After29 public void tearDown() throwsException {30 session.getTransaction().commit(); //提交事务

31 session.close(); //关闭session

32 }33

34 @Test35 public voidtestHQLQuery2() {36 String hql="from Student where name like :stuName and age=:stuAge";37 Query query=session.createQuery(hql);38 query.setString("stuName", "张%");39 query.setInteger("stuAge", 10);40 List studentList=(List)query.list();41 Iterator it=studentList.iterator();42 while(it.hasNext()){43 Student s=(Student)it.next();44 System.out.println(s);45 }46 }47

48 }

运行结果显示:

Hibernate: select student0_.stuId as stuId1_0_, student0_.stuName as stuName2_0_, student0_.stuAge as stuAge3_0_ from t_student student0_ where (student0_.stuName like ?) and student0_.stuAge=?

Student [id=1, name=张三, age=10]

3,使用别名;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Query;8 importorg.hibernate.Session;9 importorg.hibernate.SessionFactory;10 importorg.junit.After;11 importorg.junit.Before;12 importorg.junit.Test;13

14 importcom.wishwzp.model.Student;15 importcom.wishwzp.util.HibernateUtil;16

17 public classStudentTest {18

19 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();20 privateSession session;21

22 @Before23 public void setUp() throwsException {24 session=sessionFactory.openSession(); //生成一个session

25 session.beginTransaction(); //开启事务

26 }27

28 @After29 public void tearDown() throwsException {30 session.getTransaction().commit(); //提交事务

31 session.close(); //关闭session

32 }33

34 @Test35 public voidtestHQLQuery3() {36 String hql="from Student as s where s.name like :stuName and s.age=:stuAge";37 Query query=session.createQuery(hql);38 query.setString("stuName", "张%");39 query.setInteger("stuAge", 10);40 List studentList=(List)query.list();41 Iterator it=studentList.iterator();42 while(it.hasNext()){43 Student s=(Student)it.next();44 System.out.println(s);45 }46 }47

48

49 }

运行结果显示:

Hibernate: select student0_.stuId as stuId1_0_, student0_.stuName as stuName2_0_, student0_.stuAge as stuAge3_0_ from t_student student0_ where (student0_.stuName like ?) and student0_.stuAge=?

Student [id=1, name=张三, age=10]

4,对结果排序;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Query;8 importorg.hibernate.Session;9 importorg.hibernate.SessionFactory;10 importorg.junit.After;11 importorg.junit.Before;12 importorg.junit.Test;13

14 importcom.wishwzp.model.Student;15 importcom.wishwzp.util.HibernateUtil;16

17 public classStudentTest {18

19 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();20 privateSession session;21

22 @Before23 public void setUp() throwsException {24 session=sessionFactory.openSession(); //生成一个session

25 session.beginTransaction(); //开启事务

26 }27

28 @After29 public void tearDown() throwsException {30 session.getTransaction().commit(); //提交事务

31 session.close(); //关闭session

32 }33

34 @Test35 public voidtestHQLQuery4() {36 String hql="from Student order by age desc";37 Query query=session.createQuery(hql);38 List studentList=(List)query.list();39 Iterator it=studentList.iterator();40 while(it.hasNext()){41 Student s=(Student)it.next();42 System.out.println(s);43 }44 }45

46

47 }

运行结果显示:

Hibernate: select student0_.stuId as stuId1_0_, student0_.stuName as stuName2_0_, student0_.stuAge as stuAge3_0_ from t_student student0_ order by student0_.stuAge desc

Student [id=2, name=李四, age=15]

Student [id=3, name=王五, age=13]

Student [id=1, name=张三, age=10]

5,分页查询;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Query;8 importorg.hibernate.Session;9 importorg.hibernate.SessionFactory;10 importorg.junit.After;11 importorg.junit.Before;12 importorg.junit.Test;13

14 importcom.wishwzp.model.Student;15 importcom.wishwzp.util.HibernateUtil;16

17 public classStudentTest {18

19 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();20 privateSession session;21

22 @Before23 public void setUp() throwsException {24 session=sessionFactory.openSession(); //生成一个session

25 session.beginTransaction(); //开启事务

26 }27

28 @After29 public void tearDown() throwsException {30 session.getTransaction().commit(); //提交事务

31 session.close(); //关闭session

32 }33

34 @Test35 public voidtestHQLQuery5() {36 String hql="from Student";37 Query query=session.createQuery(hql);38 query.setFirstResult(1);39 query.setMaxResults(2);40 List studentList=(List)query.list();41 Iterator it=studentList.iterator();42 while(it.hasNext()){43 Student s=(Student)it.next();44 System.out.println(s);45 }46 }47

48 }

运行结果显示:

Hibernate: select student0_.stuId as stuId1_0_, student0_.stuName as stuName2_0_, student0_.stuAge as stuAge3_0_ from t_student student0_ limit ?, ?

Student [id=2, name=李四, age=15]

Student [id=3, name=王五, age=13]

6,查询单个对象;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Query;8 importorg.hibernate.Session;9 importorg.hibernate.SessionFactory;10 importorg.junit.After;11 importorg.junit.Before;12 importorg.junit.Test;13

14 importcom.wishwzp.model.Student;15 importcom.wishwzp.util.HibernateUtil;16

17 public classStudentTest {18

19 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();20 privateSession session;21

22 @Before23 public void setUp() throwsException {24 session=sessionFactory.openSession(); //生成一个session

25 session.beginTransaction(); //开启事务

26 }27

28 @After29 public void tearDown() throwsException {30 session.getTransaction().commit(); //提交事务

31 session.close(); //关闭session

32 }33

34 @Test35 public voidtestHQLQuery6() {36 String hql="from Student";37 Query query=session.createQuery(hql);38 query.setFirstResult(1);39 query.setMaxResults(1);40 Student student=(Student)query.uniqueResult();41 System.out.println(student);42 }43

44 }

运行结果显示:

Hibernate: select student0_.stuId as stuId1_0_, student0_.stuName as stuName2_0_, student0_.stuAge as stuAge3_0_ from t_student student0_ limit ?, ?

Student [id=2, name=李四, age=15]

7,链式写法;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Query;8 importorg.hibernate.Session;9 importorg.hibernate.SessionFactory;10 importorg.junit.After;11 importorg.junit.Before;12 importorg.junit.Test;13

14 importcom.wishwzp.model.Student;15 importcom.wishwzp.util.HibernateUtil;16

17 public classStudentTest {18

19 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();20 privateSession session;21

22 @Before23 public void setUp() throwsException {24 session=sessionFactory.openSession(); //生成一个session

25 session.beginTransaction(); //开启事务

26 }27

28 @After29 public void tearDown() throwsException {30 session.getTransaction().commit(); //提交事务

31 session.close(); //关闭session

32 }33

34 @Test35 public voidtestHQLQuery7() {36 String hql="from Student as s where s.name like :stuName and s.age=:stuAge";37 Query query=session.createQuery(hql);38 List studentList=(List)query39 .setString("stuName", "张%")40 .setInteger("stuAge", 10)41 .list();42 Iterator it=studentList.iterator();43 while(it.hasNext()){44 Student s=(Student)it.next();45 System.out.println(s);46 }47 }48 }

运行结果显示:

Hibernate: select student0_.stuId as stuId1_0_, student0_.stuName as stuName2_0_, student0_.stuAge as stuAge3_0_ from t_student student0_ where (student0_.stuName like ?) and student0_.stuAge=?

Student [id=1, name=张三, age=10]

第四节:QBC 查询方式

QBC 查询方式(Query By Criteria)是用一套接口来实现的查询方式;

1,普通查询;

2,带条件查询;

3,对结果排序;

4,分页查询;

5,查询单个对象;

6,链式写法;

1,普通查询;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Criteria;8 importorg.hibernate.Query;9 importorg.hibernate.Session;10 importorg.hibernate.SessionFactory;11 importorg.hibernate.criterion.Criterion;12 importorg.hibernate.criterion.Order;13 importorg.hibernate.criterion.Restrictions;14 importorg.junit.After;15 importorg.junit.Before;16 importorg.junit.Test;17

18 importcom.wishwzp.model.Student;19 importcom.wishwzp.util.HibernateUtil;20

21 public classStudentTest {22

23 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();24 privateSession session;25

26 @Before27 public void setUp() throwsException {28 session=sessionFactory.openSession(); //生成一个session

29 session.beginTransaction(); //开启事务

30 }31

32 @After33 public void tearDown() throwsException {34 session.getTransaction().commit(); //提交事务

35 session.close(); //关闭session

36 }37

38

39 @Test40 public voidtestQBCQuery1(){41 Criteria criteria=session.createCriteria(Student.class);42 List studentList=criteria.list();43 Iterator it=studentList.iterator();44 while(it.hasNext()){45 Student s=(Student)it.next();46 System.out.println(s);47 }48 }49

50 }

运行结果显示:

Hibernate: select this_.stuId as stuId1_0_0_, this_.stuName as stuName2_0_0_, this_.stuAge as stuAge3_0_0_ from t_student this_

Student [id=1, name=张三, age=10]

Student [id=2, name=李四, age=15]

Student [id=3, name=王五, age=13]

2,带条件查询;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Criteria;8 importorg.hibernate.Query;9 importorg.hibernate.Session;10 importorg.hibernate.SessionFactory;11 importorg.hibernate.criterion.Criterion;12 importorg.hibernate.criterion.Order;13 importorg.hibernate.criterion.Restrictions;14 importorg.junit.After;15 importorg.junit.Before;16 importorg.junit.Test;17

18 importcom.wishwzp.model.Student;19 importcom.wishwzp.util.HibernateUtil;20

21 public classStudentTest {22

23 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();24 privateSession session;25

26 @Before27 public void setUp() throwsException {28 session=sessionFactory.openSession(); //生成一个session

29 session.beginTransaction(); //开启事务

30 }31

32 @After33 public void tearDown() throwsException {34 session.getTransaction().commit(); //提交事务

35 session.close(); //关闭session

36 }37

38 @Test39 public voidtestQBCQuery2(){40 Criteria criteria=session.createCriteria(Student.class);41 Criterion c1=Restrictions.like("name", "张%");42 Criterion c2=Restrictions.eq("age", 10);43 criteria.add(c1);44 criteria.add(c2);45 List studentList=criteria.list();46 Iterator it=studentList.iterator();47 while(it.hasNext()){48 Student s=(Student)it.next();49 System.out.println(s);50 }51 }52

53 }

运行结果显示:

Hibernate: select this_.stuId as stuId1_0_0_, this_.stuName as stuName2_0_0_, this_.stuAge as stuAge3_0_0_ from t_student this_ where this_.stuName like ? and this_.stuAge=?

Student [id=1, name=张三, age=10]

3,对结果排序;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Criteria;8 importorg.hibernate.Query;9 importorg.hibernate.Session;10 importorg.hibernate.SessionFactory;11 importorg.hibernate.criterion.Criterion;12 importorg.hibernate.criterion.Order;13 importorg.hibernate.criterion.Restrictions;14 importorg.junit.After;15 importorg.junit.Before;16 importorg.junit.Test;17

18 importcom.wishwzp.model.Student;19 importcom.wishwzp.util.HibernateUtil;20

21 public classStudentTest {22

23 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();24 privateSession session;25

26 @Before27 public void setUp() throwsException {28 session=sessionFactory.openSession(); //生成一个session

29 session.beginTransaction(); //开启事务

30 }31

32 @After33 public void tearDown() throwsException {34 session.getTransaction().commit(); //提交事务

35 session.close(); //关闭session

36 }37

38

39 @Test40 public voidtestQBCQuery3(){41 Criteria criteria=session.createCriteria(Student.class);42 criteria.addOrder(Order.desc("age"));43 List studentList=criteria.list();44 Iterator it=studentList.iterator();45 while(it.hasNext()){46 Student s=(Student)it.next();47 System.out.println(s);48 }49 }50

51 }

运行结果显示:

Hibernate: select this_.stuId as stuId1_0_0_, this_.stuName as stuName2_0_0_, this_.stuAge as stuAge3_0_0_ from t_student this_ order by this_.stuAge desc

Student [id=2, name=李四, age=15]

Student [id=3, name=王五, age=13]

Student [id=1, name=张三, age=10]

4,分页查询;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Criteria;8 importorg.hibernate.Query;9 importorg.hibernate.Session;10 importorg.hibernate.SessionFactory;11 importorg.hibernate.criterion.Criterion;12 importorg.hibernate.criterion.Order;13 importorg.hibernate.criterion.Restrictions;14 importorg.junit.After;15 importorg.junit.Before;16 importorg.junit.Test;17

18 importcom.wishwzp.model.Student;19 importcom.wishwzp.util.HibernateUtil;20

21 public classStudentTest {22

23 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();24 privateSession session;25

26 @Before27 public void setUp() throwsException {28 session=sessionFactory.openSession(); //生成一个session

29 session.beginTransaction(); //开启事务

30 }31

32 @After33 public void tearDown() throwsException {34 session.getTransaction().commit(); //提交事务

35 session.close(); //关闭session

36 }37

38 @Test39 public voidtestQBCQuery4(){40 Criteria criteria=session.createCriteria(Student.class);41 criteria.setFirstResult(2);42 criteria.setMaxResults(2);43 List studentList=criteria.list();44 Iterator it=studentList.iterator();45 while(it.hasNext()){46 Student s=(Student)it.next();47 System.out.println(s);48 }49 }50

51 }

运行结果显示:

Hibernate: select this_.stuId as stuId1_0_0_, this_.stuName as stuName2_0_0_, this_.stuAge as stuAge3_0_0_ from t_student this_ limit ?, ?

Student [id=3, name=王五, age=13]

5,查询单个对象;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Criteria;8 importorg.hibernate.Query;9 importorg.hibernate.Session;10 importorg.hibernate.SessionFactory;11 importorg.hibernate.criterion.Criterion;12 importorg.hibernate.criterion.Order;13 importorg.hibernate.criterion.Restrictions;14 importorg.junit.After;15 importorg.junit.Before;16 importorg.junit.Test;17

18 importcom.wishwzp.model.Student;19 importcom.wishwzp.util.HibernateUtil;20

21 public classStudentTest {22

23 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();24 privateSession session;25

26 @Before27 public void setUp() throwsException {28 session=sessionFactory.openSession(); //生成一个session

29 session.beginTransaction(); //开启事务

30 }31

32 @After33 public void tearDown() throwsException {34 session.getTransaction().commit(); //提交事务

35 session.close(); //关闭session

36 }37

38 @Test39 public voidtestQBCQuery5(){40 Criteria criteria=session.createCriteria(Student.class);41 criteria.setFirstResult(2);42 criteria.setMaxResults(1);43 Student student=(Student)criteria.uniqueResult();44 System.out.println(student);45 }46

47 }

运行结果显示:

Hibernate: select this_.stuId as stuId1_0_0_, this_.stuName as stuName2_0_0_, this_.stuAge as stuAge3_0_0_ from t_student this_ limit ?, ?

Student [id=3, name=王五, age=13]

6,链式写法;

StudentTest.java

1 packagecom.wishwzp.service;2

3

4 importjava.util.Iterator;5 importjava.util.List;6

7 importorg.hibernate.Criteria;8 importorg.hibernate.Query;9 importorg.hibernate.Session;10 importorg.hibernate.SessionFactory;11 importorg.hibernate.criterion.Criterion;12 importorg.hibernate.criterion.Order;13 importorg.hibernate.criterion.Restrictions;14 importorg.junit.After;15 importorg.junit.Before;16 importorg.junit.Test;17

18 importcom.wishwzp.model.Student;19 importcom.wishwzp.util.HibernateUtil;20

21 public classStudentTest {22

23 private SessionFactory sessionFactory=HibernateUtil.getSessionFactory();24 privateSession session;25

26 @Before27 public void setUp() throwsException {28 session=sessionFactory.openSession(); //生成一个session

29 session.beginTransaction(); //开启事务

30 }31

32 @After33 public void tearDown() throwsException {34 session.getTransaction().commit(); //提交事务

35 session.close(); //关闭session

36 }37

38 @Test39 public voidtestQBCQuery6(){40 Criteria criteria=session.createCriteria(Student.class);41 List studentList=criteria42 .setFirstResult(0)43 .setMaxResults(2)44 .list();45 Iterator it=studentList.iterator();46 while(it.hasNext()){47 Student s=(Student)it.next();48 System.out.println(s);49 }50 }51

52 }

运行结果显示:

Hibernate: select this_.stuId as stuId1_0_0_, this_.stuName as stuName2_0_0_, this_.stuAge as stuAge3_0_0_ from t_student this_ limit ?

Student [id=1, name=张三, age=10]

Student [id=2, name=李四, age=15]

END

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值