jimphei學(xué)習(xí)工作室

          jimphei學(xué)習(xí)工作室

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            23 隨筆 :: 0 文章 :: 1 評論 :: 0 Trackbacks

          (一)、經(jīng)常用的過濾器

           1package com.ascent.util;
           2
           3import java.io.IOException;
           4import javax.servlet.Filter;
           5import javax.servlet.FilterChain;
           6import javax.servlet.FilterConfig;
           7import javax.servlet.ServletException;
           8import javax.servlet.ServletRequest;
           9import javax.servlet.ServletResponse;
          10import javax.servlet.UnavailableException;
          11
          12/**
          13 * Example filter that sets the character encoding to be used in parsing the
          14 * incoming request
          15 */

          16public class SetCharacterEncodingFilter implements Filter {
          17
          18    /**
          19     * Take this filter out of service.
          20     */

          21    public void destroy() {
          22    }

          23    /**
          24     * Select and set (if specified) the character encoding to be used to
          25     * interpret request parameters for this request.
          26     */

          27    public void doFilter(ServletRequest request, ServletResponse response,
          28    FilterChain chain)throws IOException, ServletException {
          29
          30    request.setCharacterEncoding("gb2312");
          31
          32    // 傳遞控制到下一個(gè)過濾器
          33    chain.doFilter(request, response);
          34    }

          35
          36    public void init(FilterConfig filterConfig) throws ServletException {
          37    }

          38}

          39

          (二)、購物車類代碼
          package com.ascent.util;

          import java.util.HashMap;

          import com.ascent.po.Product;

          public class ShopCart {
              
          private HashMap<String, Product> hashMap;
              
              
          public HashMap<String, Product> getHashMap() {
                  
          return hashMap;
              }


              
          public void setHashMap(HashMap<String, Product> hashMap) {
                  
          this.hashMap = hashMap;
              }


              @SuppressWarnings(
          "unchecked")
              
          public ShopCart(){
                  hashMap 
          = new HashMap();
              }

              
              
          /**
               * 檢查hashmap中是否有了該pid對應(yīng)的對象方法
               * 
          @param pid
               * 
          @return true:有   false:無
               
          */

              
          public boolean checkPid(String pid){
                  
          if(hashMap.containsKey(pid)){
                      
          return true;
                  }
          else{
                      
          return false;
                  }

              }

              
          /**
               * 在上面方法返回false情況下添加product
               * 
          @param pid
               * 
          @param product
               
          */

              
          public void addProduct(String pid,Product product){
                  hashMap.put(pid, product);
              }

              
              
          /**
               * 根據(jù)id刪除hashmap中的product
               * 
          @param pid
               
          */

              
          public void delProduct(String pid){
                  hashMap.remove(pid);
              }

              
              
          /**
               * 修改hashmap中pid對應(yīng)product的質(zhì)量quantity
               * 
          @param pid
               * 
          @param quantity
               
          */

              
          public void updateQuantity(String pid,String quantity){
                  hashMap.get(pid).setQuantity(quantity);
              }

              
              
          /**
               * 清除購物車
               
          */

              
          public void emptyCart(){
                  
          this.getHashMap().clear();
              }

          }


          (三)、分頁算法
          //分頁類
          package com.ascent.util;
          import java.util.*;
          /**
           * 
          @author Administrator
           * 
          @version 負(fù)責(zé)頁面控制的 JavaBean
           
          */

          public class PageBean {            
              
          public int currentPage;                // 當(dāng)前頁數(shù)
              public int totalPage;                // 總頁數(shù)
              public int totalRows;                // 總行數(shù)
              public int rowsPage = 5;            // 每頁顯示多少行
              public ArrayList data;                // 封裝頁面顯示的數(shù)據(jù)
              public PageBean(){}
              
          public void countTotalPage(){        // 計(jì)算總頁數(shù)
                  if(totalRows%rowsPage==0){
                      
          this.totalPage = totalRows/rowsPage;
                  }

                  
          else{
                      
          this.totalPage = totalRows/rowsPage + 1;
                  }

              }

              
          public ArrayList getData(){                
                  
          return data;
              }

              
              
          public PageBean(int totalRows){
                  
          this.totalRows = totalRows;
                  
          this.countTotalPage();
              }

          }





              
          // 分頁算法
              public String guestPageShow() throws Exception {
                  
          this.pageReturn();
                  
          return "guestproductsshow";
              }


              @SuppressWarnings(
          "unchecked")
              
          private void pageReturn() {
                  String jump_page 
          = this.getJumpPage();
                  
          if (jump_page == null{
                      jump_page 
          = "1";
                  }

                  PageBean page 
          = this.listData(jump_page);
                  ActionContext.getContext().getSession().put(
          "product_page_list", page);
                  
          this.setDataList(page.getData());
              }


              
          public PageBean listData(String number) {
                  PageBean page 
          = new PageBean(productService.getTotalRows());
                  
          int num = Integer.parseInt(number);
                  String sql 
          = "from Product p where delFlag=0 order by p.pid";
                  page.data 
          = productService.getData(sql, page.rowsPage * (num - 1),
                          page.rowsPage);
                  page.currentPage 
          = num;
                  
          return page;

              }


              
          // 分頁算法


          //實(shí)現(xiàn)
                          PageBean page=this.listData("1");
                          ActionContext.getContext().getSession().put(
          "productuser_page_list", page);
                          
                          
          this.setDataList(page.getData());



          //jsp方面

            
          <%
           PageBean pBean 
          = (PageBean)session.getAttribute("productuser_page_list");
           
          %>
           
          <%
           
          if(pBean.totalPage!=1){  
           
          %>   
                 
          <form name="pageForm" action="pageProductuserManagerAction.action" method="post">         
                
          <%@ include file="page.jsp" %>   
                
          </form>         
                
          <%}
           %>    

          //page.jsp

          <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>

            
          <script language="JavaScript">
              function Jumping()
          {
                 document.pageForm.submit();         
              }
              
              function gotoPage(pagenum)
          {
                  
          //alert(pagenum);
                  
          //alert(document.pageForm.jumpPage.value);
                 document.pageForm.jumpPage.value = pagenum;
                 document.pageForm.submit();       
              }

            
          </script>    
                  
          <table>  
                    
          <tr>
                      
          <td>每頁<%=pBean.rowsPage%></td>
                      
          <td><%=pBean.totalRows%></td>
                      
          <td><%=pBean.currentPage%></td><td><%=pBean.totalPage%></td>
                      
          <td>
                          
          <%if(pBean.currentPage==1){out.print("首頁 上一頁");}else{%>
                        
          <a href="javascript:gotoPage(1)">首頁</a>
                        
          <a href="javascript:gotoPage(<%=pBean.currentPage-1%>)">上一頁</a>
                        
          <%
                        }

                         
          %> 
                         
          <%if(pBean.currentPage==pBean.totalPage){out.print("下一頁 尾頁");}else{%>
                         
          <a href="javascript:gotoPage(<%=pBean.currentPage+1%>)">下一頁</a>
                         
          <a href="javascript:gotoPage(<%=pBean.totalPage%>)">尾頁</a>
                         
          <%}
           %>
                      
          </td>
                      
          <td>                
                               轉(zhuǎn)到第
          <select name="jumpPage" onchange="Jumping()">
                                
          <%for(int i=1;i<=pBean.totalPage;i++){
                                    
          if(i==pBean.currentPage){
                                
          %>
                                
                                
          <option selected value=<%=i%>><%=i%></option>
                                
          <%
                                }

                                
          else
                                
          {
                                 
          %>
                                 
          <option value=<%=i%>><%=i%></option>
                                 
          <%
                                 }

                                 }

                                  
          %>
                                  
          </select>
                        
          </td>
                    
          </tr>
                  
          </table>
                
                  


          這個(gè)ssh項(xiàng)目的配置文件
          posted on 2009-03-13 17:16 jimphei 閱讀(231) 評論(1)  編輯  收藏

          評論

          # re: 電子商務(wù)系統(tǒng)的一些代碼[未登錄] 2009-03-18 18:28 sclsch
          頁面上邏輯不能封裝到bean里頭?  回復(fù)  更多評論
            


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 万源市| 将乐县| 天峨县| 新化县| 张家港市| 类乌齐县| 远安县| 青龙| 金平| 平昌县| 新津县| 宿松县| 富川| 腾冲县| 闸北区| 甘谷县| 贺州市| 德化县| 丰宁| 泰来县| 湖南省| 德钦县| 肇源县| 胶州市| 达孜县| 关岭| 永新县| 民丰县| 和田县| 阳城县| 峡江县| 丰县| 依安县| 衢州市| 靖宇县| 吉林省| 和平区| 石棉县| 广东省| 义马市| 九台市|