Session 练习购物车

servlet

package com.Cookice;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class cart 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 {
        response.setContentType("text/html;charset=utf-8");
            //点击就得到名字添加商品
        String name = request.getParameter("name");
        //得到是中文名字 有编码问题 get 提交
         name= new String(name.getBytes("iso8859-1"), "utf-8");

         //第一次购物
         Map<String,Integer> cart = (Map<String, Integer>) request.getSession().getAttribute("cart");

         if(cart==null){
        cart = new HashMap<String,Integer>();
        cart.put(name, 1);
         }else{
             Integer conut = cart.get(name);
             if(conut==null) {

                 cart.put(name, 1);
             }else {
                 cart.put(name, conut+1);
             }

         }
        //将购物车存入到session 中
         request.getSession().setAttribute("cart", cart);
         response.getWriter().println("购物成功,<a href='"+request.getContextPath()+"/pro.jsp' >继续购物</a>");
         response.getWriter().println("<a href='"+request.getContextPath()+"/ca.jsp' >查看购物车</a>");
    }

}

jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>


<title>My JSP 'ca.jsp' starting page</title>


</head>

<body>
    <%
        Map<String, Integer> car = (Map<String, Integer>) request
                .getSession().getAttribute("cart");
        if (car == null) {
            out.println("什么都没得");
        } else {
            //遍历集合
            for (String li : car.keySet()) {
                out.println(li + car.get(li));
            }

        }
    %>
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值