美文网首页
统一异常处理

统一异常处理

作者: FynnLiu | 来源:发表于2018-12-26 17:29 被阅读0次

简要描述:

  • 在web层controller业务代码中,一般不要处理任何异常,将异常完全跑出,由ExceptionHandler统一处理

example1:

根据不同的异常类型,区分处理,最终返回前端code,msg
AppBizException,业务异常,根据返回的异常码从配置了获得msg
Exception,error日志,大部分非App异常说明程序发生未知异常,需要打印error日志,通过邮件报警后续跟踪处理
  @ControllerAdvice("com.ly.fn.biz.ins.miniapp")
@Component
public class CommonAdvice {

    private static final Logger LOG = LoggerFactory.getLogger(CommonAdvice.class);

    private static final String defaultMsg = "正在为您努力加载,请稍后再试";

    @Rpcwired
    private DictService dictService;

    @Autowired
    private NeedJumpDecider decider;


    @ExceptionHandler
    @ResponseBody
    public JsonResp<?> exception(HttpServletRequest request, Exception ex, HttpServletResponse response)
            throws IOException {
        // 根据不同错误转向不同页面
        LOG.error("systemException,where memberId={}", ex);
        return JsonResp.resp(JsonResp.FAIL, defaultMsg, new BaseResponse());
    }

    @ExceptionHandler
    @ResponseBody
    public JsonResp<?> exception(HttpServletRequest request, Error ex, HttpServletResponse response)
            throws IOException {
        // 根据不同错误转向不同页面
        LOG.error("systemException", ex);
        return JsonResp.resp(JsonResp.FAIL, defaultMsg, new BaseResponse());
    }

    @ExceptionHandler
    @ResponseBody
    public JsonResp<?> exception(HttpServletRequest request, BindException ex, HttpServletResponse response)
            throws IOException {
        // 根据不同错误转向不同页面
        LOG.error("bindException,{}", JSON.toJSONString(ex.getAllErrors()), ex);
        return JsonResp.resp(JsonResp.PARAM_FAIL, "paramError", new BaseResponse());
    }

相关文章

  • spring/springmvc 全局异常处理

    1.在项目中为什么要统一异常处理 当异常返回到前端页面的时候可以统一处理,避免前端无法处理异常 不做统一异常处理,...

  • 统一异常处理

    一、什么是统一异常处理 1、制造异常 2、什么是统一异常处理我们想让异常结果也显示为统一的返回结果对象,并且统一处...

  • springboot全局异常处理

    一、单个controller范围的异常处理/** 统一异常处理 @return*/@RequestMapping(...

  • springboot之统一异常处理

    spring统一异常处理 使用spring的统一异常处理,我们就不再需要在业务代码中就行显式的捕获异常处理,在da...

  • 统一异常处理

    1.定义返回结果对象 2.定义返回结果工具类, 3.枚举消息状态 .4.自定义异常类 5.统一异常拦截 6.业务中...

  • 统一异常处理

    首先,利用枚举,来定义异常类型。定义枚举ResultEnum: 自定义异常,新建CustomException类:...

  • 统一异常处理

    简要描述: 在web层controller业务代码中,一般不要处理任何异常,将异常完全跑出,由ExceptionH...

  • 统一异常处理

    Overview 利用Spring AOP思想,对项目中的异常进行统一处理。 实现思路 通过@Controller...

  • JAVA 异常控制

    文章 Spring RestFul API统一异常处理SpringBoot RESTful 应用中的异常处理小结S...

  • @ControllerAdvice

    @ExceptionHandler 异常统一处理 处理web请求中的异常 请求:http://localhos...

网友评论

      本文标题:统一异常处理

      本文链接:https://www.haomeiwen.com/subject/khqklqtx.html