请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于CategoryServiceImpl.java中使用createBySuccess()与createBySuccessMessage()的问题


public ServerResponse addCategory(String categoryName,Integer parentId){
        if(parentId == null || StringUtils.isBlank(categoryName)){
            return ServerResponse.createByErrorMessage("添加品类参数错误");
        }
        Category category = new Category();
        category.setName(categoryName);
        category.setParentId(parentId);
        category.setStatus(true);//这个分类是可用的
        int rowCount = categoryMapper.insert(category);
        if(rowCount > 0){
            return ServerResponse.createBySuccess("添加品类成功");
        }
        return ServerResponse.createByErrorMessage("添加品类失败");

    }

    public ServerResponse updateCategoryName(Integer categoryId,String categoryName){
        if(categoryId == null || StringUtils.isBlank(categoryName)){
            return ServerResponse.createByErrorMessage("更新品类参数错误");
        }
        Category category = new Category();
        category.setId(categoryId);
        category.setName(categoryName);
        int rowCount = categoryMapper.updateByPrimaryKeySelective(category);
        if(rowCount > 0){
 return ServerResponse.createBySuccess("更新品类名字成功");
        }
        return ServerResponse.createByErrorMessage("更新品类名字失败");
    }

我疑惑的是成功的时候这里为什么不用createBySuccessMessage(),因为我看到品类接口是这么写的

success

{
   "status": 0,
   "msg": "添加品类成功"
}

fail

{
   "status":1,
   "msg": "添加品类失败"
}

用createBySuccessMessage()应该是最恰当的,那么,视频中为什么要用createBySuccess呢?
这样的话,返回结果就是视频中功能自测部分,添加品类成功的时候返回的是

{
   "status": 0,
   "data": "添加品类成功"
}


正在回答 回答被采纳积分+3

1回答

Ninka_佳 2017-05-10 14:08:29
public static <T> ServerResponse<T> creatBySuccess(){
    return new ServerResponse<T>(ResponseCode.SUCCESS.getCode());
}

public static<T> ServerResponse<T> creatBySuccess(String msg,T data){
    return new ServerResponse<T>(ResponseCode.SUCCESS.getCode(),msg,data);
}

老师写了个重载的方法,这个可以传msg,,data也可以为空,也就是不向前端返回数据,,,,可能老师只是顺手,手快就选择了这个,,没有什么影响,当然用createBySuccessMessage()更好

0 回复 有任何疑惑可以回复我~
  • 提问者 RedWay #1
    恩,是没什么影响,就是以后在前端显示结果信息的时候需要对成功或失败的信息区分而已。
       public static <T> ServerResponse<T> createBySuccess(T data){
            return new ServerResponse<T>(ResponseCode.SUCCESS.getCode(), data);
        }
    老师选择的是上面这个方法。
    回复 有任何疑惑可以回复我~ 2017-05-10 14:31:37
  • Geely #2
    理解的很透彻!!赞!!正解!!因为这个没什么区别。。。只不过和前端约定的是如果放msg,前端要展示~~
    回复 有任何疑惑可以回复我~ 2017-05-10 23:49:07
  • Geely 回复 提问者 RedWay #3
    赞赞赞
    回复 有任何疑惑可以回复我~ 2017-05-10 23:49:14
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信