请稍等 ...
×

采纳答案成功!

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

那个系统通用异常处理

既然有一个异常处理类 那么在controller有错误的话会转到异常处理类中那么

 @RequestMapping("/login")
    //@Valid 参数校验
    public Map<String,Object> login(@Valid LoginVo loginVo){
        Long id = Long.valueOf(loginVo.getId());
        String password = loginVo.getPassword();
        boolean login = userService.login(id, password);
        Map<String,Object> modelMap = new HashMap<>();
        if (login) {
            modelMap.put("success",true);
            modelMap.put("message","登陆成功");
        }else {
            //一般不会到这里?   老师看这里 是不是一般不会出现这个 因为报错的话直接进入异常处理器
            throw new RuntimeException("未知错误");
        }

        return modelMap;
    }

正在回答

1回答

既然有一个异常处理类 那么在controller有错误的话会转到异常处理类中那么?会的。

//一般不会到这里?   老师看这里 是不是一般不会出现这个 因为报错的话直接进入异常处理器。

一般会到这里,比如:密码输入错误。

0 回复 有任何疑惑可以回复我~
  • 提问者 肖小小 #1
    或者 我捕捉错误 抛出去?
    public Map<String,Object> login(HttpServletResponse response, @Valid LoginVo loginVo){
            Long id = Long.valueOf(loginVo.getId());
            String password = loginVo.getPassword();
            try {
                boolean login = userService.login(response, id, password);
                Map<String, Object> modelMap = new HashMap<>();
                if (login) {
                    modelMap.put("success", true);
                    modelMap.put("message", "登陆成功");
                }
                return modelMap;
            }catch (Exception e){
                throw e;
            }
        }
    回复 有任何疑惑可以回复我~ 2019-11-12 18:53:27
  • 若鱼1919 回复 提问者 肖小小 #2
    不用手动捕获
    回复 有任何疑惑可以回复我~ 2019-11-13 08:45:20
  • 提问者 肖小小 回复 若鱼1919 #3
    那直接去掉就好了?
    回复 有任何疑惑可以回复我~ 2019-11-13 21:36:08

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号