首页 > 其他分享 >学习笔记——CommonResult工具、书城项目第五阶段(清空购物车、删除购物项、对数量的修改)

学习笔记——CommonResult工具、书城项目第五阶段(清空购物车、删除购物项、对数量的修改)

时间:2023-01-05 18:11:34浏览次数:50  
标签:CommonResult 删除 request cart response deleteCartItem 购物车 id 书城

2023-01-05

一、CommonResult工具

1、CommonResult工具的目的是:为了方便团队开发。一般是在使用异步的时候使用。

2、CommonResult工具的使用:

  (1)前端发送异步请求到servlet。

  (2)servlet给响应数据的时候,将所有数据都封装到CommonResult对象内。

二、清空购物车

2.1 找到清空购物车的超链接

      (1)cart.html中的第67行

<a href="cart?flag=clearCart" class="clear-cart">清空购物车</a>

  (2)在"CartServlet"中新建一个方法

protected void clearCart(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.getSession().removeAttribute("cart");
        //将页面跳转设置到cart.html
        this.processTemplate("cart/cart",request,response);
    }

  (3)在cart.html中的第52行中添加

<tbody v-if="totalCount==0">
          <tr>
            <td colspan="6" align="center">购物车为空,请点击继续购物</td>
          </tr>
 </tbody>

三、删除购物项

3.1 找到删除的超链接

  (1)找到“cart.html”中的第65行,使用“异步”方式(绑定一个函数)

<td><a href="" @click="deleteCartItem">删除</a></td>

  (2)在Vue中触发一个函数,“cart.html”中的第167行

deleteCartItem:function(){
    //发布异步请求删除当前购物项(将图书的id带过去)
    axios({
         method:"post",
         url:"cart",
         params:{
            flag:"deleteCartItem",
         }
    });
    event.preventDefault();//阻止控件的默认行为
}            

  (3)在超链接上绑定一个"name"属性

<td><a href="" @click="deleteCartItem" :name="cartItem.book.bookId">删除</a></td>

  (4)获取“name”属性的值,在"cart.html"中的第169行

var id=event.target.name;

  (5)将id传到“params”中

  (6)在"CartServlet"中设置一个方法

protected void deleteCartItem(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //1.获得请求参数
        String id = request.getParameter("id");
        //2.获得购物车对象
        HttpSession session = request.getSession();
        Cart cart = (Cart)session.getAttribute("cart");
        //3.调用cart中的方法删除购物项
        
    }

  (7)到"Cart.java"中写一个“删除的方法”

  /**
     * 功能:删除购物项
     * @param id
     */
    public void deleteCartItem(Integer id){
        map.remove(id);
    }

  (8)接着写刚才的方法

protected void deleteCartItem(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //1.获得请求参数
        String id = request.getParameter("id");
        //2.获得购物车对象
        HttpSession session = request.getSession();
        Cart cart = (Cart)session.getAttribute("cart");
        //3.调用cart中的方法删除购物项
        cart.deleteCartItem(Integer.parseInt(id));
        //4.后台的数据删除成功了,但是前台不刷新。因为是异步请求
        showCart(request,response);
    }

  (9)转到刚才的“cart.html”中

deleteCartItem:function(){
    //发布异步请求删除当前购物项(将图书的id带过去)
    axios({
         method:"post",
         url:"cart",
         params:{
            flag:"deleteCartItem",
         }
    }).then(response=>{
         if(response.data.flag){
                //需要将后台传过来的数据,展示在网页上(Vue的方式)
                this.cartItems=response.data.resultData[0];
                this.totalCount=response.data.reultData[1];
                this.totalAmount=response.data.resultData[2];   
        }
    });
    event.preventDefault();//阻止控件的默认行为
}     

 

标签:CommonResult,删除,request,cart,response,deleteCartItem,购物车,id,书城
From: https://www.cnblogs.com/isDaHua/p/17027819.html

相关文章

  • jQuery 加入购物车 弹窗
    功能介绍:1.点击按钮,出现弹窗,和蒙版2.购物车数量显示1件商品3.点击右上角关闭按钮,关闭弹窗,蒙版消失4.点击继续购物按钮,弹窗消失,蒙版消失5.点击去购物车按钮,跳转页面6.点击蒙......
  • python入门 之购物车程序
    #1.启动程序后,让用户输入工资,然后打印商品列表#2.允许用户根据商品编号购买商品#3.用户选择商品后,检查余额是否足够,够就直接扣款,不够就提醒#4.可随时退出,退出时,打印已......
  • 基于Java springboot+mybatis+mysql+jsp网上书城管理系统
    @目录一、系统介绍二、功能展示1.主页(客户)2.登陆(客户)3.我的购物车(客户)4.我的订单(客户)5.我的图书(商家)6.新书上架(商家)7.订单管理(商家)7.统计分析(管理员)8.用户管理(用户管理......
  • 用Python来写个小型购物车程序
    0x1前言Python语言能做很多东西的,像数据分析啊、自动化、开发、爬虫(真的很棒哟,初学者玩很有成就感的啊哈哈)等等还有挺多。0x2用Python编写的一个小型购物车程序impor......
  • python利用列表知识,编写购物车小程序
    #readme#该程序的主要是用来模拟购买商品的store=[("iphone",5800),("pad",2000),("dress",500),("shoe",400)]#定义一个商品列表salary=input("输入你的工资")#输入工......
  • 通过一个抢购的需要,而引发的购物车问题(这个抢购是一个与主站不同的域名)
    这其实是一个跨域的问题,我们要用到的技术是jsonp,看看吧:P1:$.ajax({1:$.ajax({2:jsonp:"jsonpcallback",3:data:'pro......
  • 性能优化-压测实战-分析电商项目购物车qps低的几种情况
    性能优化-压测实战-电商项目购物车背景:对学过的一个电商项目购物车相关接口性能优化手段再次复盘,添加一些个人笔记配置Jmeter压测计划Jmeter压测可视化原理:通过配置J......
  • HW_购物车问题
    #只管主件v,n=map(int,input().split())#每到一个主件,都有四种情况,主件,主件+附件1,主件+附件2,主件+附件1+附件2primary={}#格式key是物品编......
  • vue2 购物车21
    main:importVuefrom'vue'importAppfrom'./App.vue'//vantimportVantfrom'vant';import'vant/lib/index.css';import{NavBar,SubmitBar,Card,Checkb......
  • Netbeans 16 的学习日志(购物车GUI)
    1.前期准备Netbeans点我下载Netbeans快捷键2.......