码迷,mamicode.com
首页 > Web开发 > 详细

Hibernate(八)

时间:2018-01-17 21:53:41      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:方法   string   cti   lis   oid   body   全面   criteria   getname   

三套查询之Criteria查询

完全面向对象的,不需要写任可查询语句.

1.查询所有的学生

 1     //1.查询所有的学生
 2     @Test
 3     public void test1(){
 4         Criteria criteria = session.createCriteria(Student.class);
 5         List<Student> list = criteria.list();
 6         for (Student student : list) {
 7             System.out.println(student.getId()+student.getName());
 8         }
 9         
10         Criteria criteria2 = session.createCriteria("com.rong.entity.group.Student");
11         List<Student> list2 = criteria2.list();
12         for (Student student : list2) {
13             System.out.println(student.getId()+student.getName());
14         }
15     }

 2.添加查询条件

add(Criterion criterion) : 添加查询条件.
Criterion : 代表一个查询条件.
Restrictions工具类,专门负责生成查询条件对象,它把where部分都改成了静态方法。
sqlRestriction(String sql) : 生成查询条件的万能方法.
Property工具类,专门负责生成查询条件对象.
Propery.forName("属性名").xxx()

 1     //2.添加查询条件
 2     @Test
 3     public void test2(){
 4         //1.添加一个
 5         Criteria criteria = session.createCriteria(Student.class);
 6         criteria=criteria.add(Restrictions.like("name", "%ab%"));
 7         List<Student> list = criteria.list();
 8         for (Student student : list) {
 9             System.out.println(student.getId()+student.getName());
10         }
11         //2.添加多个
12         Criteria criteria2 = session.createCriteria(Student.class);
13         criteria2.add(Restrictions.like("name", "%a%"));
14         criteria2.add(Restrictions.between("java", 60, 100));
15         List<Student> list2 = criteria2.list();
16         for (Student student : list2) {
17             System.out.println(student.getId()+student.getName());
18         }
19         System.out.println("===================================");
20         Criteria criteria3 = session.createCriteria(Student.class);
21         criteria3.add(Property.forName("name").like("%p%"));
22         criteria3.add(Property.forName("math").between(85, 100));
23         List<Student> list3 = criteria3.list();
24         for (Student student : list3) {
25             System.out.println(student.getId()+student.getName()
26                                 +student.getMath());
27         }
28     }

3.添加自己的sql

Hibernate(八)

标签:方法   string   cti   lis   oid   body   全面   criteria   getname   

原文地址:https://www.cnblogs.com/57rongjielong/p/8305840.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!