www.pudn.com > j2EEnews_struts_hibernate_spring.rar > IntoViewDao.java


package com.news.dao.impl; 
 
import java.sql.SQLException; 
import java.util.List; 
 
import org.hibernate.Query; 
import org.hibernate.classic.Session; 
import org.springframework.orm.hibernate3.HibernateCallback; 
import org.springframework.orm.hibernate3.support.HibernateDaoSupport; 
 
import com.news.dao.IintoViewDao; 
import com.news.page.Page; 
import com.news.struts.form.IntoViewForm; 
 
 
public class IntoViewDao extends HibernateDaoSupport implements IintoViewDao{ 
 
	 
	public List getList(Page page,IntoViewForm intoViewForm){ 
		final Page p = page; 
		final IntoViewForm form = intoViewForm; 
		return getHibernateTemplate().executeFind(new HibernateCallback() { 
			public Object doInHibernate(org.hibernate.Session s) throws org.hibernate.HibernateException, SQLException { 
				Query query = s.createQuery(p.getHql()); 
				query.setParameter(0,form.getTypeid()); 
				query.setFirstResult(p.getStartRs()); 
				query.setMaxResults(p.getPerPage()); 
				List list = query.list();				 
				return list; 
			} 
		}); 
	} 
	public int getTotal(String hql,IntoViewForm intoViewForm){ 
		//System.out.println("sss"); 
		Session s = getHibernateTemplate().getSessionFactory().openSession(); 
		Query q = s.createQuery(hql); 
		q.setParameter(0,intoViewForm.getTypeid()); 
		List result = q.list(); 
		getHibernateTemplate().getSessionFactory().close(); 
		if (null != result && !result.isEmpty()) { 
			return (result.size()); 
		} else { 
			return 0; 
		} 
	} 
	 
}