zl程序教程

您现在的位置是:首页 >  后端

当前栏目

通用的Java DAO类详解编程语言

JAVA编程语言 详解 通用 DAO
2023-06-13 09:20:28 时间
import org.hibernate.criterion.MatchMode; import org.hibernate.criterion.Restrictions; import org.jb.common.dao.CommonDAO; import org.jb.common.util.PageResult; import org.jb.y272.team0.entity.SalaryStandard; import org.springframework.orm.hibernate3.HibernateCallback; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; public class CommonDAOHibImpl extends HibernateDaoSupport implements CommonDAO { * (非 Javadoc) * @see y2ssh.dlc.chp2.dao.CommonDAO#add(java.lang.Object) public Serializable add(Object o) { Serializable ret = super.getHibernateTemplate().save(o); return ret; * (非 Javadoc) * @see y2ssh.dlc.chp2.dao.CommonDAO#get(java.lang.Class, * java.io.Serializable) public Object get(Class clazz, Serializable id) { Object ret = super.getHibernateTemplate().get(clazz, id); return ret; * (非 Javadoc) * @see y2ssh.dlc.chp2.dao.CommonDAO#del(java.lang.Class, * java.io.Serializable) public void del(Class clazz, Serializable id) { super.getHibernateTemplate().delete(this.get(clazz, id)); * (非 Javadoc) * @see y2ssh.dlc.chp2.dao.CommonDAO#update(java.lang.Object) public void update(Object o) { super.getHibernateTemplate().update(o); * (非 Javadoc) * @see y2ssh.dlc.chp2.dao.CommonDAO#search(java.lang.String) public List list(String hql) { List ret = super.getHibernateTemplate().find(hql); return ret; public List listOrderBy(String hql) List ret = super.getHibernateTemplate().find(hql); return ret; * (非 Javadoc) * @see org.jb.common.dao.CommonDAO#listByPage(java.lang.String, * org.jb.common.util.PageResult) @SuppressWarnings("unchecked") public void listByPage(String hql, PageResult pageResult) { if (null == hql) { return; Query query = this.getSession().createQuery(hql); query.setFirstResult(pageResult.getFirstRec()); query.setMaxResults(pageResult.getPageSize()); List ret = query.list(); pageResult.setList(ret); String queryString = ""; if (hql.toUpperCase().indexOf("SELECT") != -1) { int i = query.getQueryString().toUpperCase().indexOf("FROM"); queryString = "Select count(*) " + hql.substring(i, hql.length()); } else { queryString = "Select count(*) " + hql; // 去掉ORDER BY 的部分 int j = queryString.toUpperCase().lastIndexOf("ORDER"); if (j != -1) { queryString = queryString.substring(0, j); Query cquery = this.getSession().createQuery(queryString); cquery.setCacheable(true); if(cquery.iterate().hasNext()){ int recTotal = ((Integer) cquery.iterate().next()).intValue(); pageResult.setRecTotal(recTotal); @SuppressWarnings("unchecked") public List SalaryStandard getStandards(final Date beginTime, final Date endTime, final SalaryStandard standard) { List SalaryStandard list = super.getHibernateTemplate().executeFind( new HibernateCallback() { public Object doInHibernate(Session s) throws HibernateException { Criteria c = s.createCriteria(SalaryStandard.class); if (standard.getStandardId() != null standard.getStandardId()!="") { c.add(Restrictions.like("standardId", standard .getStandardId(), MatchMode.ANYWHERE)); if (standard.getDesigner() != null standard.getDesigner()!="") { c.add(Restrictions.like("designer", standard .getDesigner(), MatchMode.ANYWHERE)); if (beginTime != null) { c.add(Restrictions.ge("registTime", beginTime)); if (endTime != null) { c.add(Restrictions.le("registTime", endTime)); return c.list(); }); return list; }

10267.html

cjava