通过Session得到Criteria类的对象
/**
* 用Criteria方便的综合查询 Criteria类有丰富的比较方法
*
* 如:大于,小于,等于, not null, in,null, like, isEmpty....
*/
public static void select()
{
Session s = null;
try
{
s = HibernateUtil.getSeesion();
//得到Criteria对象
final Criteria c = s.createCriteria(User.class);
//添加查询条件 ,eq()表示等于,第一个参数是User类上的属性名, 第二个参数是值 .
c.add(Restrictions.eq("name", "zl"));
c.add(Restrictions.lt("birthday", new Date())); //lt()表示小于
//下面两个条件是 或的关系,可以注意观察输出的SQL语句
c.add(Restrictions.or(Restrictions.eq("name", "wj"), Restrictions.eq("name", "name0")));
// 分页
c.setFetchSize(10); //从第10条记录起
c.setMaxResults(10); //查出10条记录
//执行查询
final List<User> list = c.list();
for (final User u : list)
{
System.out.println(u.getId() + " " + u.getName());
}
}
finally
{
s.clear();
}
}
DetachedCriteria 在构造时不须要Session对象,可以在没有Session时完成拼接查询条件,要执行时才须要Session对象
//在Action中 拼查询条件
public ActionForward Action (....)
{
DetachedCriteria dc = DetachedCriteria.forClass(User.class);
String name = request.getParameter("name");
//拼查询条件
if (name != null)
dc.add(Restrictions.eq("name", name));
int age = request.getParameter("age");
if(age > 0)
dc.add(Restrictions.eq("age", age));
List users = query(dc);
}
//在DAO层 查询
static List query(DetachedCriteria dc)
{
Session s = HibernateUtil.getSession();
Criteria c = dc.getExecutableCriteria(s); //这时须要一个session
List rs = c.list();
s.close();
return rs;
}
分享到:
相关推荐
UN - Manual of Tests and Criteria:2019(Rev7) - 最新英文电子版(536页).zip
UN - Manual of Tests and Criteria:2019(Rev7) - 最新英文电子版(536页).pdf
Hibernate中的Criteria连表查询,包括单表属性查询,多表内连,以及左外连接查询
DetachedCriteria Criteria 使用方法 非常详细外加练习
Navier-Stokes-Landau-Lifshitz方程组的正则性准则,樊继山,高洪俊,在本文中, 我们研究了Navier-Stokes-Landau-Lifshitz 方程组正则性准则。利用精细的估计,得到了Navier-Stokes-Landau-Lifshitz 方程组的光滑解...
Hibernate-Criteria 模糊查询
Hibernate-Criteria_模糊查询
DetachedCriteria
Criteria查询教程ppt课件内容详解
New delay-dependent stability criteria and robust control of nonlinear time-delay systems
09 Criteria查询方式
1、掌握Hibernate框架应用项目 2、学习HQL参数查询和Criteria查询 3、比较HQL和Criteria的不同 建立web项目,通过页面查询构造动态查询语句,struts2和hibernate框架整合。
Criteria查询将数据查询条件封装成为一个对象,可以堪称是传统SQL的对象化表示。
我尝试着模仿hibernate的criteria构建这么一个轻量级查询框架,提供一下特点: 1 可以根据前台传过来的查询数据自动构建查询条件 2 可以生成纯SQl 3 也可以直接使用preparestatement进行查询,返回我们想要的数据。 ...
Hibernat 使用Criteria查询多对多关系(SET集合)条件
这个案例是根据分组查询,并且得到每组的条数,不懂得可以q我:1710086675,欢迎认识更多新朋友
hibernate-Criteria hibernate-Criteria hibernate-Criteria hibernate-Criteria hibernate-Criteria hibernate-Criteria
DetachedCriteria使用介绍
T21.9_Criteria查询 java 经典教程 经典教材