WEB——Session案例

本文介绍了一个简单的淘宝商品列表页面实现方案,包括商品展示、加入购物车功能及购物车页面的商品显示逻辑。通过使用Servlet处理用户请求,实现商品信息的动态加载,并通过会话维护购物车状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

list.jsp

<body>
    <h1>淘宝商品列表</h1>
    <table>
        <tr>
            <td>
                <a href="/session-cart/details.jsp"><img src="/session-cart/img/1.jpg" height="200" width="200"></a><br>
                Girl<br>
                Total:1125件<br>
                ¥1050.00<br>
                <a href ="/session-cart/AServlet?name=0" >Add to cart</a>   
            </td>
            <td>
            <img src="/session-cart/img/2.jpg" height="200" width="200"><br>
                Lady<br>
                Total:1125件<br>
                ¥1050.00<br>
                <a href ="/session-cart/AServlet?name=1">加入购物车</a>  
            </td>
        </tr>
        <tr>
            <td>
                <img src="/session-cart/img/3.jpg" height="200" width="200"><br>
                Cool<br>
                <a href ="/session-cart/AServlet?name=2">加入购物车</a>  
            </td>
            <td>
                <img src="/session-cart/img/4.jpg" height="200" width="200"><br>
                Sex<br>
                <a href ="/session-cart/AServlet?name=3">加入购物车</a>  
            </td>
        </tr>
    </table>
        <a href="/session-cart/cart.jsp">查看购物车</a>
  </body>

AServlet.java

public class AServlet extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        String index = request.getParameter("name");
        String[] clothes = { "Girl", "Lady", "Cool", "Sex" };
        String name = clothes[Integer.parseInt(index)];

        Map<String, Integer> cartMap = (Map<String, Integer>) request
                .getSession().getAttribute("cart");
        if (cartMap == null) {
            cartMap = new LinkedHashMap<String, Integer>();
            request.getSession().setAttribute("cart", cartMap);
        }
        Integer count = cartMap.put(name, 1);
        if (count != null) {
            cartMap.put(name, count + 1);
        }
        response.sendRedirect("/session-cart/list.jsp");

    }

    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        doGet(request, response);

    }

}

cart.jsp

<body>
  <h1>购物车</h1>
    <table>
        <tr>
            <th>商品名称</th>
            <th>商品数量</th>
            <th>商品价格</th>
        </tr>
        <%
        Map<String,Integer>map = (Map<String,Integer>)request.getSession().getAttribute("cart");
        if(map!=null&&map.size()>0){
            for(Entry<String,Integer>en:map.entrySet()){
        %>
        <tr>
            <th><%=en.getKey()%></th>
            <th><%=en.getValue() %></th>
        </tr>
        <%
            }
        }
        %>  
    </table>
    <h4>合计:</h4>
  </body>

details.jsp用于显示点击图片以后的内容,自己弄吧。
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值