计算总页数的一个算法:(总记录数-1) / 每页显示的数量 + 1
<body>
<table border="1px">
<tr>
<td>商品ID</td>
<td>商品名称</td>
<td>商品价格</td>
<td>商品产地</td>
</tr>
<c:forEach items="${goodsList }" var="good">
<tr>
<td>${good.goodId }</td>
<td>${good.goodName }</td>
<td>${good.goodPrice }</td>
<td>${good.goodAddress }</td>
<td><input type="radio" name="xk" id="xk"
value="${good.goodId }" /></td>
</tr>
</c:forEach>
<tr>
<td colspan="4"><a href="GoodServlet?action=next&pageIndex=1">首页</a>
<a href="GoodServlet?action=next&pageIndex=${pageIndex-1 }">上一页</a>
${pageIndex }/${totalPages } <a
href="GoodServlet?action=next&pageIndex=${pageIndex+1 }">下一页</a> <a
href="GoodServlet?action=next&pageIndex=${totalPages }">尾页</a> <input
type="text" size="2" name="pageIndex" id="pageIndex"><input
type="button" value="GO"></td>
</tr>
</table>
<h2>删除</h2>
</body>
public class GoodServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
GoodService gs=new GoodServiceImpl();
int pageSize=2;
int pageIndex=1;
int totalPages=gs.getToatlPageService(pageSize);
String action=request.getParameter("action");
if("show".equals(action)){
List<Good> list=gs.getGoodsService(pageSize, pageIndex);
request.getSession().setAttribute("goodsList", list);
}else if("next".equals(action)){
pageIndex=Integer.valueOf(request.getParameter("pageIndex"));
if(pageIndex<1){
pageIndex=1;
}else if(pageIndex>totalPages){
pageIndex=totalPages;
}
List<Good> list=gs.getGoodsService(pageSize, pageIndex);
request.getSession().setAttribute("goodsList", list);
}
request.getSession().setAttribute("pageIndex", pageIndex);
request.getSession().setAttribute("totalPages", totalPages);
response.sendRedirect("index.jsp");
}
}