ShowProductAction.java
上传用户:zhc3n3
上传日期:2022-07-30
资源大小:2750k
文件大小:2k
源码类别:

WEB源码(ASP,PHP,...)

开发平台:

JavaScript

  1. package com.t11.web.action;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import javax.servlet.http.HttpServletRequest;
  5. import javax.servlet.http.HttpServletResponse;
  6. import com.t11.biz.ProductService;
  7. import com.t11.entity.Product;
  8. import com.t11.web.Action;
  9. import com.t11.web.ActionForward;
  10. import com.t11.web.ActionMapping;
  11. public class ShowProductAction implements Action {
  12. ProductService product = new ProductService();
  13. public ActionForward execute(ActionMapping actionMapping,
  14. HttpServletRequest request, HttpServletResponse response) {
  15. ActionForward action = null;
  16. List<Product> list = product.showProduct();
  17. //记录在数据库读取出来总条数
  18. int records = list.size();
  19. //每页显示条数
  20. int pagesize = 5;
  21. //以有的总页数
  22. int pages = records%pagesize==0?records/pagesize:records%pagesize+1;
  23. //显示在当前页面的信息
  24. int indexpages = 1;
  25. if(request.getParameter("pg")!=null){
  26. indexpages = Integer.parseInt(request.getParameter("pg"));
  27. }
  28. //如果当前小于1或者大于最大页返回到第一页或者最后一页
  29. if(indexpages<1){
  30. indexpages=1;
  31. }else if(indexpages>pages){
  32. indexpages=pages;
  33. }
  34. //取出当前页的集合
  35. List<Product> curProducts=new ArrayList<Product>();
  36. int start =(indexpages-1)*pagesize;
  37. //读取出来的总条数比索引出来的少时!把records的数赋给end
  38. int end = indexpages*pagesize>=records?records:indexpages*pagesize;
  39. for(int i=start;i<end;i++){
  40. curProducts.add(list.get(i));
  41. }
  42. if (list != null) {
  43. //把商品别表传到对应的JSP中。。
  44. request.setAttribute("PRODUCT", curProducts);
  45. //把总页面传到对应的JSP中。。
  46. request.setAttribute("pages", pages);
  47. request.setAttribute("indexpages", indexpages);
  48. action = actionMapping.getForward().get("showProductList");
  49. } else {
  50. action = actionMapping.getForward().get("failed");
  51. }
  52. return action;
  53. }
  54. }