⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pagedaoimp.java

📁 该在线考试关系统(B/S结构)主要采用JAVA语言开发涉及主要WEB技术有:Struts+Spring+Hibernate框架
💻 JAVA
字号:
package dao.hibernate;

import java.util.Collection;

import javax.servlet.http.HttpServletRequest;

import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.springframework.orm.hibernate3.HibernateTemplate;

import web.breakpage.Page;
import web.breakpage.PagerHandle;

import dao.IPageDao;

public class PageDaoImp implements IPageDao
{
	private SessionFactory sf;
	private HibernateTemplate template;
	
	public SessionFactory getSf()
	{
		return sf;
	}

	public void setSf(SessionFactory sf)
	{
		this.sf = sf;
        //通过session工厂得到hibernate模版
		template = new HibernateTemplate(sf);
	}

	public Collection findAll(int currow, int pagesize, String hql)
	{
		SessionFactory sf = template.getSessionFactory();
		Collection TestList = null;
		Session s = sf.openSession();
	    Query q = s.createQuery(hql);
	    q.setFirstResult(currow);
	    q.setMaxResults(pagesize);
	    TestList = q.list();
	    s.close();
	    return TestList;
	}
	
	

	public int getCount(String hql)
	{
		SessionFactory sf = template.getSessionFactory();
		Session s = sf.openSession();
		try 
	     {
		      Integer rows=(Integer) s.createQuery(hql).list().get(0);
		      s.flush();
		      s.close();
		      return rows.intValue();
	     } 
	     catch (HibernateException ex) 
	     {
	    	ex.printStackTrace();
	        return 0;
	     }
	}

	public Page getPage(HttpServletRequest request, String hql,int pageSize)
	{
		Page p = null;
		int totalRows = this.getCount(hql);
		p = PagerHandle.getPager(request, totalRows,pageSize);
		return p;
	}
	
	public Page getPage(HttpServletRequest request,int count,int pageSize)
	{
		Page p = null;
		int totalRows = count;
		p = PagerHandle.getPager(request, totalRows,pageSize);
		return p;
	}
}

⌨️ 快捷键说明

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