basehibernatedaoimpl.java

来自「这是一个轻便的j2ee的web应用框架,是一个在多个项目中运用的实际框架,采用s」· Java 代码 · 共 75 行

JAVA
75
字号
/*
 * Created on 2004-4-14
 *
 */
package com.esimple.framework.dao.hibernate;

import java.util.*;
import net.sf.hibernate.Criteria;
import net.sf.hibernate.HibernateException;
import net.sf.hibernate.Session;
import org.springframework.dao.DataAccessException;
import org.springframework.dao.DataRetrievalFailureException;
import org.springframework.orm.hibernate.support.HibernateDaoSupport;

import com.esimple.framework.dao.support.DateRange;
import com.esimple.framework.dao.support.QueryOrder;

/**
 * @author steven
 *
 */
public class BaseHibernateDAOImpl extends HibernateDaoSupport {

	public List equalsQuery(Object obj,int beginNum,int length)throws DataAccessException {
		return equalsQuery(obj,beginNum,length,null,null);
	}

	public List equalsQuery(
		Object obj,
		int beginNum,
		int length,
		QueryOrder order)
		throws DataAccessException {	
		return equalsQuery(obj,beginNum,length,null,order);
	}
	/** 分页查询 **/
	public List equalsQuery(
		Object obj,
		int beginNum,
		int length,
		DateRange range,
		QueryOrder order)
		throws DataAccessException {
		List list = null;
		try {
			Session session = getSession();
			Criteria criteria = session.createCriteria(obj.getClass());

			HibernateHelper.addEqualsProperty(obj, criteria);

			if (order != null)
				HibernateHelper.addOrderClause(order, criteria);

			HibernateHelper.selectPage(beginNum, length, criteria);

			if (range != null) {
				range.addToCriteria(criteria);
			}
			list = criteria.list();

			session.close();

		} catch (DataAccessException e) {
			throw e;
		} catch (HibernateException ee) {
			throw new DataRetrievalFailureException(ee.getMessage());
		} catch (Exception eee) {
			throw new DataRetrievalFailureException(eee.getMessage());
		}

		return list;

	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?