老师,我有两个问题想不明白
来源: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回答
-
同学好,
是的,从前端传过来的productCategoryList,具体同学可以看看前端js的代码
batchAddProductCategory这个service实现方法里面我们构建了ProductCategoryException
并返回,所以在里面决定了使用的是哪个 ProductCategoryException
042022-03-06
相似问题