hibernated的DAO类的分页方法; public PagerMonl findAll(int offset, int pageSize) {
Session session = this.getSession();
String hql = "select count(*) from TblUser";
Query q = session.createQuery(hql);
int total = ((Long) q.uniqueResult()).intValue();
q= this.getSession().createQuery("from TblUser");
q.setFetchSize(offset);
q.setMaxResults(pageSize);
List datas=q.list();
PagerMonl pm = new PagerMonl();
pm.setTotal(total);
pm.setDatas(datas);
return pm;
}pager类;package com.itt.pager;import java.util.List;public class PagerMonl { private int total;
private List datas; public PagerMonl(int total, List datas) {
super();
this.total = total;
this.datas = datas;
} public PagerMonl() {
super();
// TODO Auto-generated constructor stub
} public int getTotal() {
return total;
} public void setTotal(int total) {
this.total = total;
} public List getDatas() {
return datas;
} public void setDatas(List datas) {
this.datas = datas;
}
}
action类;'package com.itt.action;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.ServletActionContext;import com.itt.bean.TblUser;
import com.itt.biz.IBaseDao;
import com.itt.pager.PagerMonl;
import com.opensymphony.xwork2.ActionSupport;public class UserAction extends ActionSupport { private TblUser user;
private IBaseDao<TblUser> baseDao; public String add() throws Exception {
// TODO Auto-generated method stub
this.baseDao.save(user);
return "save";
} public String get() {
HttpServletRequest request = ServletActionContext.getRequest();
String n = null;
try {
n = request.getParameter("pager.offset");
} catch (Exception e) {
// TODO: handle exception
} int offset = 0;
if (!"".equals(n) && n != null) {
offset = Integer.parseInt(n.toString());
}
PagerMonl pm = this.baseDao.findAll(offset, 10);
request.setAttribute("pm", pm);
return "result";
} public TblUser getUser() {
return user;
} public void setUser(TblUser user) {
this.user = user;
} public IBaseDao<TblUser> getBaseDao() {
return baseDao;
} public void setBaseDao(IBaseDao<TblUser> baseDao) {
this.baseDao = baseDao;
}
}
页面; <body>
<table width="778" border="0" cellPadding="0" cellSpacing="1" bgcolor="#6386d6">
<tr bgcolor="#EFF3F7">
<td align="center">
编号
</td>
<td align="center">
名字
</td>
<td align="center">
密码
</td>
</tr>
<c:if test="${!empty pm.datas}">
<c:forEach items="${pm.datas}" var="item">
<tr bgcolor="#EFF3F7">
<td align="center">
${item.id }
</td>
<td align="center">
${item.userName }
</td>
<td align="center">
${item.passWord }
</td>
</tr>
</c:forEach>
</c:if>
<c:if test="${empty pm.datas}">
<tr>
<td>没有找到数据</td>
</tr>
</c:if>
</table>
<pg:pager url="user_get.action" items="${pm.total}" export="currentPageNumber=pageNumber">
<pg:first>
<a href="${pageUrl}">首页</a>
</pg:first>
<pg:prev>
<a href="${pageUrl }">上一页</a>
</pg:prev>
<pg:pages>
<c:choose>
<c:when test="${currentPageNumber eq pageNumber}">
<font color="red">${pageNumber }</font>
</c:when>
<c:otherwise>
<a href="${pageUrl }">${pageNumber }</a>
</c:otherwise>
</c:choose>
</pg:pages>
<pg:next>
<a href="${pageUrl }">下一页</a>
</pg:next>
<pg:last>
<a href="${pageUrl }">尾页</a>
</pg:last>
</pg:pager>
</body>
Session session = this.getSession();
String hql = "select count(*) from TblUser";
Query q = session.createQuery(hql);
int total = ((Long) q.uniqueResult()).intValue();
q= this.getSession().createQuery("from TblUser");
q.setFetchSize(offset);
q.setMaxResults(pageSize);
List datas=q.list();
PagerMonl pm = new PagerMonl();
pm.setTotal(total);
pm.setDatas(datas);
return pm;
}pager类;package com.itt.pager;import java.util.List;public class PagerMonl { private int total;
private List datas; public PagerMonl(int total, List datas) {
super();
this.total = total;
this.datas = datas;
} public PagerMonl() {
super();
// TODO Auto-generated constructor stub
} public int getTotal() {
return total;
} public void setTotal(int total) {
this.total = total;
} public List getDatas() {
return datas;
} public void setDatas(List datas) {
this.datas = datas;
}
}
action类;'package com.itt.action;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.ServletActionContext;import com.itt.bean.TblUser;
import com.itt.biz.IBaseDao;
import com.itt.pager.PagerMonl;
import com.opensymphony.xwork2.ActionSupport;public class UserAction extends ActionSupport { private TblUser user;
private IBaseDao<TblUser> baseDao; public String add() throws Exception {
// TODO Auto-generated method stub
this.baseDao.save(user);
return "save";
} public String get() {
HttpServletRequest request = ServletActionContext.getRequest();
String n = null;
try {
n = request.getParameter("pager.offset");
} catch (Exception e) {
// TODO: handle exception
} int offset = 0;
if (!"".equals(n) && n != null) {
offset = Integer.parseInt(n.toString());
}
PagerMonl pm = this.baseDao.findAll(offset, 10);
request.setAttribute("pm", pm);
return "result";
} public TblUser getUser() {
return user;
} public void setUser(TblUser user) {
this.user = user;
} public IBaseDao<TblUser> getBaseDao() {
return baseDao;
} public void setBaseDao(IBaseDao<TblUser> baseDao) {
this.baseDao = baseDao;
}
}
页面; <body>
<table width="778" border="0" cellPadding="0" cellSpacing="1" bgcolor="#6386d6">
<tr bgcolor="#EFF3F7">
<td align="center">
编号
</td>
<td align="center">
名字
</td>
<td align="center">
密码
</td>
</tr>
<c:if test="${!empty pm.datas}">
<c:forEach items="${pm.datas}" var="item">
<tr bgcolor="#EFF3F7">
<td align="center">
${item.id }
</td>
<td align="center">
${item.userName }
</td>
<td align="center">
${item.passWord }
</td>
</tr>
</c:forEach>
</c:if>
<c:if test="${empty pm.datas}">
<tr>
<td>没有找到数据</td>
</tr>
</c:if>
</table>
<pg:pager url="user_get.action" items="${pm.total}" export="currentPageNumber=pageNumber">
<pg:first>
<a href="${pageUrl}">首页</a>
</pg:first>
<pg:prev>
<a href="${pageUrl }">上一页</a>
</pg:prev>
<pg:pages>
<c:choose>
<c:when test="${currentPageNumber eq pageNumber}">
<font color="red">${pageNumber }</font>
</c:when>
<c:otherwise>
<a href="${pageUrl }">${pageNumber }</a>
</c:otherwise>
</c:choose>
</pg:pages>
<pg:next>
<a href="${pageUrl }">下一页</a>
</pg:next>
<pg:last>
<a href="${pageUrl }">尾页</a>
</pg:last>
</pg:pager>
</body>
import org.hibernate.Session;import com.itt.bean.TblUser;
import com.itt.pager.PagerMonl;public interface IBaseDao<T> { public PagerMonl findAll(int offset, int pageSize); public void save(T transientInstance); public void delete(T persistentInstance); public T findById(java.lang.Integer id); public List findByExample(T instance); public List findByProperty(String propertyName, Object value); public List findAll(); public T merge(T detachedInstance);
}实现类package com.itt.biz.impl;import java.util.List;
import com.itt.biz.IBaseDao;
import com.itt.pager.PagerMonl;
import com.itt.bean.TblUser;
import com.itt.dao.TblUserDAO;public class TblUserDaoBizImpl implements IBaseDao<TblUser> { private TblUserDAO tblUserDAO; public TblUserDAO getTblUserDAO() {
return tblUserDAO;
} public void setTblUserDAO(TblUserDAO tblUserDAO) {
this.tblUserDAO = tblUserDAO;
} public void delete(TblUser persistentInstance) {
// TODO Auto-generated method stub
this.tblUserDAO.delete(persistentInstance);
} public PagerMonl findAll(int offset, int pageSize) {
// TODO Auto-generated method stub
return this.tblUserDAO.findAll(offset, pageSize);
} public List findAll() {
// TODO Auto-generated method stub
return this.tblUserDAO.findAll();
} public List findByExample(TblUser instance) {
// TODO Auto-generated method stub
return this.tblUserDAO.findByExample(instance);
} public TblUser findById(Integer id) {
// TODO Auto-generated method stub
return this.tblUserDAO.findById(id);
} public List findByProperty(String propertyName, Object value) {
// TODO Auto-generated method stub
return this.findByProperty(propertyName, value);
} public TblUser merge(TblUser detachedInstance) {
// TODO Auto-generated method stub
return this.tblUserDAO.merge(detachedInstance);
} public void save(TblUser transientInstance) {
// TODO Auto-generated method stub
this.tblUserDAO.save(transientInstance);
}}
中的offset是多少啊?