老师,我有两个问题想不明白

来源:7-4 商品类别批量添加的前端开发

小毛6823960

2020-07-03

 @RequestMapping(value = "/addproductcategorys",method = RequestMethod.POST)
    @ResponseBody
    private Map<String, Object> addProductCategorys(@RequestBody List<ProductCategory> productCategoryList,
                                                    HttpServletRequest request){
        Map<String, Object> modelMap = new HashMap<>();
        Shop currentShop = (Shop)request.getSession().getAttribute("currentShop");
        for (ProductCategory pc : productCategoryList) {
            pc.setShopId(currentShop.getShopId());
        }

这里的productCategoryList的传值是从前端哪里来的?前端把商铺的类别和优先级传入session,后端回去session,再获得详细信息,这是currentShop的值,但是productCategoryList我想不明白。

 if (productCategoryList !=null && productCategoryList.size() > 0){
            try {
                ProductCategoryException pe = productCategoryService.batchAddProductCategory(productCategoryList);
                if (pe.getState() == ProductCategoryStateEnum.SUCCESS.getState()){
                    modelMap.put("success",true);

然后这里的pe的类型是ProductCategoryException,按照这个逻辑,productCategoryService.batchAddProductCategory(productCategoryList)是运行成功的,但是在ProductCategoryException类中,有个调用成功的构造方法和调用失败的构造方法,这里Java怎么知道什么时候调用哪个构造方法?还是说Java是通过productCategoryService.batchAddProductCategory(productCategoryList)的返回结果来判断的?如果有异常或者报错就调用失败的方法,如果没有异常没有报错就调用成功的方法

写回答

1回答

翔仔

2020-07-05

同学好,

  1. 是的,从前端传过来的productCategoryList,具体同学可以看看前端js的代码

  2. batchAddProductCategory这个service实现方法里面我们构建了ProductCategoryException
    并返回,所以在里面决定了使用的是哪个 ProductCategoryException


0
4
翔仔
回复
weixin_慕雪5045329
同学好,这种情况对比下key大小写是不是一致的,还有参数和视频不一样的地方再哪里,程序说1是1,不可能大家都可以就自己的不行,肯定还是哪里有问题了
2022-03-06
共4条回复

Java双版本(SSM到SpringBoot)校园商铺全栈开发

SSM商铺V1.0,解决毕设痛点;SpringBoot商铺V2.0,满足工作刚需

5113 学习 · 8144 问题

查看课程