📄 querydao.java
字号:
package com.ktv.dao;
import java.sql.Date;
import java.text.SimpleDateFormat;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.criterion.DetachedCriteria;
import org.hibernate.criterion.Expression;
import org.hibernate.criterion.Order;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.ktv.entity.Singer;
//这个类是公共的查找类,可以引用他来进行条件的查找
public class QueryDAO extends HibernateDaoSupport {
public List querySimple(Class c){
//Criteria criteria = getSession().createCriteria(c);
//criteria.add(Expression.eq("name", "李啊啊"));
//criteria.add(Expression.like("name", "李%"));
//criteria.add(Expression.ilike("name", "%defg%"));
//criteria.add(Expression.idEq(new Integer(2)));
//criteria.add(Expression.eq("age", new Integer(20)));
//criteria.add(Expression.gt("age", new Integer(20)));
//criteria.add(Expression.ge("age", new Integer(20)));
//criteria.add(Expression.lt("age", new Integer(20)));
//criteria.add(Expression.le("age", new Integer(20)));
//criteria.add(Expression.between("age", new Integer(20), new Integer(50)));
//criteria.add(Expression.or(Expression.ilike("name", "%a%"),
// Expression.ge("age", new Integer(20))));
//criteria.add(Expression.and(Expression.ilike("name", "%a%"),
// Expression.ge("age", new Integer(20))));
//criteria.addOrder(Order.asc("name"));
//return criteria.list();
return getSession().createCriteria(c)
.add(Expression.idEq(3))
.add(Expression.ilike("name", "%a%"))
.add(Expression.and(Expression.ge("registerDate", Date.valueOf("2000-1-1")),
Expression.le("registerDate", Date.valueOf("2003-1-1"))))
.addOrder(Order.desc("id"))
.list();
}
public List queryOneToMany(Class c, String condition) throws Exception{
/*
//SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
Criteria criteria = getSession().createCriteria(c);
criteria.add(Expression.like("name", "张%"));
criteria.add(Expression.between("registerDate", sdf.parse("1/1/2004"), sdf.parse("1/1/2006")));
Criteria criteria2 = criteria.createCriteria(condition);
criteria2.add(Expression.like("orderCode", "order%"));
return criteria.list();
List<Object> list = new ArrayList<Object>(1);
list.add(criteria.uniqueResult());
return list;
*/
DetachedCriteria dc=DetachedCriteria.forClass(c);
dc.add(Expression.eq("singerId",condition));//添加查找条件
List list=getHibernateTemplate().findByCriteria(
dc) ;
return list;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -