hibernate Restrictions 用法 查询

转载 2012年03月27日 10:06:52

 

import hibernate classes

 

Java代码  收藏代码
  1. import org.hibernate.criterion.DetachedCriteria;  
  2. import org.hibernate.criterion.MatchMode;  
  3. import org.hibernate.criterion.Order;  
  4. import org.hibernate.criterion.Restrictions;  
Java代码  收藏代码
  1. DetachedCriteria criteria = DetachedCriteria.forClass(UserPO.class);  
  2. // 按照用户名排序 -- 升序  
  3. criteria.addOrder(Order.asc("userName"));  
  4. if (user != null) {  
  5.     // 按条件查询  
  6.     if (user.getUserName() != null && !user.getUserName().trim().equals("")) {  
  7.         criteria.add(Restrictions.like("userName", user.getUserName().trim(), MatchMode.ANYWHERE));  
  8.     }  
  9. }  
  10.   
  11. getHibernateTemplate().findByCriteria(criteria ); // 返回LIST  

 

Restrictions 的用法:

 

1、Restrictions

方法 说明
Restrictions.eq equal 等于 ==
Restrictions.allEq 参数为Map对象,使用key/value进行多个等于的对比,相当于多个Restrictions.eq的效果
Restrictions.gt great than 大于 >
Restrictions.ge great equal 大于等于 >=
Restrictions.lt less than 小于 <
Restrictions.le less equal 小于等于 <=
Restrictions.between 对应SQL的between子句
Restrictions.like 对应SQL的like子句
Restrictions.in 对应SQL的in子句
Restrictions.and and 关系
Restrictions.or or 关系
Restrictions.isNull 判断属性是否为null,为空则返回true
Restrictions.sqlRestriction SQL限定的查询


2、Order

 

 

Order.asc 根据传入的字段进行升序排序
Order.desc                             降序

 

 

3、MatchMode

 

 

MatchMode.EXACT 字符串精确匹配,相当于: like 'value'
MatchMode.ANYWHERE                    字符串在中间匹配 like '%value%'
MatchMode.START 匹配前面 like 'value%'
MatchMode.END like '%value'

 

 

例子:

 

Java代码  收藏代码
  1. // 查询年龄在20-30岁之间的所有学生对象  
  2. List list = session.createCriteria(Student.class)  
  3.        .add(Restrictions.between("age",new Integer(20),new Integer(30)).list();  
  4. // 查询学生姓名在AAA,BBB,CCC之间的学生对象  
  5. String[] names = {"AAA","BBB","CCC"};  
  6. List list = session.createCriteria(Student.class)  
  7.        .add(Restrictions.in("name",names)).list();  
  8. // 查询年龄为空的学生对象  
  9. List list = session.createCriteria(Student.class)  
  10.        .add(Restrictions.isNull("age")).list();  
  11. // 查询年龄等于20或者年龄为空的学生对象  
  12. List list = session.createCriteria(Student.class)  
  13.        .add(Restrictions.or(Restrictions.eq("age",new Integer(20)),  
  14.                  Restrictions.isNull("age")).list();  

 

相关文章推荐

hibernate Restrictions用法 MatchMode.ANYWHERE

from:http://hi.baidu.com/gebitan505/item/b40dd54b28553209e9350418   方法 说明 Restrictions.eq = ...
  • hpb21
  • hpb21
  • 2012-09-23 16:15
  • 370

hibernate Restrictions用法 MatchMode.ANYWHERE

方法 说明 Restrictions.eq = Restrictions.allEq 利用Map来进行多个等于的限制 ...

Hibernate 中 Criteria 查询条件 Restrictions 限定条件参数详解

方法名            Restrictions.eq --> equal,等于. Restrictions.allEq --> 参数为Map对象,使用key/...

hibernate查询条件表达式Restrictions

主要是从官网上拔下来的例子:

hibernate_Restrictions用法

方法 说明 Restrictions.eq = Restrictions.allEq 利用Map来进行多个等于的限制 ...

hibernate里面的Restrictions用法

 方法 说明 Restrictions.eq = Restrictions.allEq ...

hibernate Restrictions用法

QBC常用限定方法 Restrictions.eq --> equal,等于. Restrictions.allEq --> 参数为Map对象,使用key/value进行多个等于的比对,相...

Hibernate Criteria的 Criterion,Projection,Restrictions等条件设置

在查询方法设计上可以灵活的根据Criteria的特点来方便地进行查询条件的组装. hibernate设计了CriteriaSpecification作为Criteria的父接口,下面提供了Crite...

hibernate_Restrictions用法

方法 说明 Restrictions.eq = Restrictions.allEq 利用Map来进行多个等于的限制 ...

hibernate Restrictions用法

方法  说明  Restrictions.eq  =  Restrictions.allEq  利用Map来进行多个等于的限制  Restrictions.gt  >  Restrictions.ge...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)