一.开门见山 在前后端分离框架的大趋势下,前后端基本的职责已经确定. 前端主要负责界面的处理以及基本的判空检验.数据来源则通过vue调用后端发布的接口. 后端的原型还是mvc的模式: controller 接受前端请求(entity或者list<entity>),并调用service提供的功能性接口,返回json service 定义接口做实际的业务处理,数据库处理.可以调用微服务接口,可以调用dao层的数据库CURD dao 一般单表操作,利用mybatisplus就可以实现单笔或者批量操作
在写api接口中,正常返回和异常错误返回我们都希望很清楚的将这些信息清楚的返回给用户,出现异常情况下需要清楚的知道是参数异常还是未知异常,而不是返回一个不正确的数据结构. 所以此处只针对写api接口时异常处理: 1.先自定义一个我们需要的异常类,注意要继承RuntimeException类. public class ApplicationException extends RuntimeException { private Integer errorId; public Applicatio
Spring Boot版本 1.5 @ControllerAdvice public class GlobalExceptionHandler extends ResponseEntityExceptionHandler{ @ExceptionHandler(value = Exception.class) @ResponseBody public String jsonHandler(HttpServletRequest request, Exception e){ logger.error(
Spring Cloud Gateway中的全局异常处理不能直接用@ControllerAdvice来处理,通过跟踪异常信息的抛出,找到对应的源码,自定义一些处理逻辑来符合业务的需求. 网关都是给接口做代理转发的,后端对应的都是REST API,返回数据格式都是JSON.如果不做处理,当发生异常时,Gateway默认给出的错误信息是页面,不方便前端进行异常处理. 需要对异常信息进行处理,返回JSON格式的数据给客户端.下面先看实现的代码,后面再跟大家讲下需要注意的地方. 自定义异常处理逻辑: p