1,使用前的条件
①,jar包:pager-talib
2,实现
①,jsp页面:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://jsptags.com/tags/navigation/pager" prefix="pg"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>this is the test pagination jsp</title>
<style type="text/css">
.goodsDiv{
positon:relative;
width:100px;
height:30px;
border:1px;
}
</style>
</head>
<body>
<s:iterator value="pageList" id="goods" status="s">
<div class="goodsDiv"><s:property value="#goods.goodName"/></div>
</s:iterator>
<pg:pager items="${total}" url="goodAction!findPage" maxPageItems="5" export="offset,currentPageNumber=pageNumber" >
<pg:index>
<pg:first><a href="${pageUrl}"><nobr>[首页]</nobr></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}"><nobr>[尾页]</nobr></a></pg:last>
</pg:index>
</pg:pager>
</body>
</html>
②,action中的实现
package com.ibm.action;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.ServletActionContext;
import com.ibm.bean.Goods;
import com.ibm.dao.GoodDao;
import com.opensymphony.xwork2.ActionSupport;
public class GoodAction extends ActionSupport {
private static final long serialVersionUID = -1740926729732013381L;
private GoodDao goodDao = new GoodDao();
private List<Goods> goodsList = goodDao.loadAll();// ������Ʒ����
private List<Goods> pageList = new ArrayList<Goods>();// ÿҳҪ��ʾ����Ʒ����
private Integer total = goodsList.size();// ��Ʒ������
private Integer offset;// �ӵڼ�����ݿ�ʼ����
public Integer getTotal() {
return total;
}
public void setTotal(Integer total) {
this.total = total;
}
/**
* ��ҳ��ʾ
*/
public String findPage() {
HttpServletRequest request = ServletActionContext.getRequest();
if (request.getParameter("pager.offset") == null) {
offset = 0;
System.out.println("findPage:================================"+"if");
} else {
offset = Integer.parseInt(request.getParameter("pager.offset"));
System.out.println("findPage:================================"+"else");
}
// 5��ʾÿҳ��ʾ5�����,�ο�ҳ����� maxPageItems="5"�������Ƕ�Ӧ��
pageList = goodDao.loadPage(offset, 5);
return "findPage";
}
public List<Goods> getPageList() {
return pageList;
}
public void setPageList(List<Goods> pageList) {
this.pageList = pageList;
}
public Integer getOffset() {
return offset;
}
public void setOffset(Integer offset) {
this.offset = offset;
}
}
③,dao里面传数据,自己用的测试的dao
package com.ibm.dao;
import java.util.ArrayList;
import java.util.List;
import com.ibm.bean.Goods;
public class GoodDao {
/**
* ��ѯ������Ʒ
*/
/*@SuppressWarnings("unchecked")
public List<Goods>loadAll(){
Session session=HibernateSessionFactory.getSession();
//Session session = HibernateUtil.getSessionFactory().getCurrentSession();
//List<Goods>goodsList=session.createCriteria(Goods.class).list();
String hql = "from Goods";
Query query = session.createQuery(hql);
List<Goods>goodsList = query.list();
System.out.println(goodsList.size());
return goodsList;
} */
public List<Goods>loadAll(){
List<Goods> goods=new ArrayList<Goods>();
Goods goods1=new Goods(1,"food",1);
Goods goods2=new Goods(2,"food",2);
Goods goods3=new Goods(3,"food",3);
Goods goods4=new Goods(4,"food",4);
Goods goods5=new Goods(4,"food",4);
Goods goods6=new Goods(4,"food",4);
Goods goods7=new Goods(4,"food",4);
Goods goods8=new Goods(4,"food",4);
Goods goods9=new Goods(4,"food",4);
Goods goods10=new Goods(4,"food",4);
Goods goods11=new Goods(4,"food",4);
goods.add(goods1);
goods.add(goods2);
goods.add(goods3);
goods.add(goods4);
goods.add(goods5);
goods.add(goods6);
goods.add(goods7);
goods.add(goods8);
goods.add(goods9);
goods.add(goods10);
goods.add(goods11);
return goods;
}
/**
* ��ݲ���ȥ����ÿҳ���
*/
@SuppressWarnings("unchecked")
/* public List<Goods> loadPage(int offset,int pagesize ){
Session session=HibernateSessionFactory.getSession();
//Session session = HibernateUtil.getSessionFactory().getCurrentSession();
//List<Goods>goodsList=session.createCriteria(Goods.class).setFirstResult(offset).setMaxResults(pagesize).list();
String hql = "from Goods";
Query query = session.createQuery(hql);
query.setFirstResult(offset);
query.setMaxResults(pagesize);
List<Goods>goodsList = query.list();
System.out.println(goodsList.size());
return goodsList;
}*/
public List<Goods> loadPage(int offser,int pagesize){
List<Goods> goods=new ArrayList<Goods>();
Goods goods1=new Goods(1,"food",1);
Goods goods2=new Goods(2,"food",2);
Goods goods3=new Goods(3,"food",3);
Goods goods4=new Goods(4,"food",4);
Goods goods5=new Goods(4,"food",4);
Goods goods6=new Goods(4,"food",4);
Goods goods7=new Goods(4,"food",4);
Goods goods8=new Goods(4,"food",4);
Goods goods9=new Goods(4,"food",4);
Goods goods10=new Goods(4,"food",4);
Goods goods11=new Goods(4,"food",4);
goods.add(goods1);
goods.add(goods2);
goods.add(goods3);
goods.add(goods4);
goods.add(goods5);
goods.add(goods6);
goods.add(goods7);
goods.add(goods8);
goods.add(goods9);
goods.add(goods10);
goods.add(goods11);
return goods;
}
}
④,javabean
package com.ibm.bean;
import java.io.Serializable;
public class Goods implements Serializable{
private static final long serialVersionUID = 4359412889831254896L;
private Integer id;
private String goodName;
private Integer goodType;
public Goods(Integer id, String goodName, Integer goodType) {
super();
this.id = id;
this.goodName = goodName;
this.goodType = goodType;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getGoodName() {
return goodName;
}
public void setGoodName(String goodName) {
this.goodName = goodName;
}
public Integer getGoodType() {
return goodType;
}
public void setGoodType(Integer goodType) {
this.goodType = goodType;
}
}
⑥,实现效果图