session实现简单购物车

    xiaoxiao2021-03-25  79

    一、实现思路

    1、step1.jsp    

         实现一个表单,选择要购买的书籍    action=processStep1

    2、ProcessStep1Servlet.java   

        获取step1的数据,重定向到step2

    3、step2.jsp

        实现一个表单填写用户信息  action=processStep2

    4、ProcessStep2Servlet.java 

        获取step2的数据,重定向到 confirm  

    5、confirm.jsp

        显示所有的信息

    6、Customer类

        由于step2中填写用户信息需要一个一个获取太烦啦,所以将用户的属性封装到用户类里面

    二、实现

    1、step1.jsp    

        

    <body> <form action="<%=request.getContextPath()%>/processStep1" method="post"> <table border="1" cellpadding="10" cellspacing="0"> <tr> <td>书名</td> <td>购买</td> </tr> <tr> <td>《JSP》</td> <td><input type="checkbox" name="book" value="《JSP》" /></td> </tr> <tr> <td>《SERVLET》</td> <td><input type="checkbox" name="book" value="《SERVLET》" /></td> </tr> <tr> <td>《J2EE》</td> <td><input type="checkbox" name="book" value="《J2EE》" /></td> </tr> <tr> <td>《MYSQL》</td> <td><input type="checkbox" name="book" value="《MYSQL》" /></td> </tr> <tr> <td>《ANDROID》</td> <td><input type="checkbox" name="book" value="《ANDROID》" /></td> </tr> <tr> <td colspan="2"> <input type="submit" value="submit"/> </td> </tr> </table> </form> </body>

    2、ProcessStep1Servlet.java   

       

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1、获取请求信息 request.setCharacterEncoding("UTF-8"); String [] books=request.getParameterValues("book"); //2、将购书信息放入到session中 request.getSession().setAttribute("books",books); //3、页面重定向到step2.jsp response.sendRedirect(request.getContextPath()+"/shoppingcart/step2.jsp"); //写绝对路径防止找不到 }

    3、step2.jsp

       

    <body> <h3>输入个人信息:</h3> <form action="<%=request.getContextPath()%>/processStep2" method="post"> <table border="1" cellpadding="10" cellspacing="0"> <tr> <td colspan="2">寄送信息</td> </tr> <tr> <td>姓名:</td> <td><input type="text" name="name" /></td> </tr> <tr> <td>地址:</td> <td><input type="address" name="address" /></td> </tr> <tr> <td colspan="2">付款信息</td> </tr> <tr> <td>付款种类:</td> <td><input type="radio" name="payType" value="微信" />微信 <input type="radio" name="payType" value="支付宝" />支付宝 <input type="radio" name="payType" value="银行卡" />银行卡</td> </tr> <tr> <td>卡号:</td> <td><input type="text" name="cartNumber" /></td> </tr> <tr> <td colspan="2"> <input type="submit" value="submit"/> </td> </tr> </table> </form> </body>

    4、ProcessStep2Servlet.java 

       

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1、获取请求信息 request.setCharacterEncoding("UTF-8"); String name=request.getParameter("name"); String address=request.getParameter("address"); String payType=request.getParameter("payType"); String cartNumber=request.getParameter("cartNumber"); Customer customer=new Customer(name,address,payType,cartNumber); //2、将购书信息放入到session中 HttpSession session=request.getSession(); session.setAttribute("customer",customer); //3、页面重定向到confirm.jsp response.sendRedirect(request.getContextPath()+"/shoppingcart/confirm.jsp"); //写绝对路径防止找不到 }

    5、confirm.jsp

       

    <body> <h3>核对个人信息:</h3> <% Customer customer= (Customer) session.getAttribute("customer"); String [] books= (String[]) session.getAttribute("books"); %> <table border="1" cellpadding="10" cellspacing="0"> <tr> <td colspan="2">寄送信息</td> </tr> <tr> <td>姓名:</td> <td><%=customer.getName()%></td> </tr> <tr> <td>地址:</td> <td><%=customer.getAddress()%></td> </tr> <tr> <td colspan="2">付款信息</td> </tr> <tr> <td>付款种类:</td> <td><%=customer.getPayType()%></td> </tr> <tr> <td>卡号:</td> <td><%=customer.getCartNumber()%></td> </tr> <tr> <td colspan="2">购书:</td> </tr> <tr> <td colspan="2"> <% for (String book :books){ out.println(book); } %> </td> </tr> </table> </body>

    6、Customer类

       

    public class Customer { private String name; private String address; private String payType; private String cartNumber; public Customer(String name, String address, String payType, String cartNumber) { this.name = name; this.address = address; this.payType = payType; this.cartNumber = cartNumber; } public Customer() { } public String getName() { return name; } public String getAddress() { return address; } public String getPayType() { return payType; } public String getCartNumber() { return cartNumber; } public void setName(String name) { this.name = name; } public void setAddress(String address) { this.address = address; } public void setPayType(String payType) { this.payType = payType; } public void setCartNumber(String cartNumber) { this.cartNumber = cartNumber; } }

    转载请注明原文地址: https://ju.6miu.com/read-26247.html

    最新回复(0)