当前位置: 首页 > news >正文

vs2010网站开发视频wap手机

vs2010网站开发视频,wap手机,中山网站建设seo优化营销制作设计,简单门户网站模板文章目录 背景分析使用ControllerAdvice#xff08;RestControllerAdvice#xff09;ExceptionHandler实现全局异常全局异常处理-多个处理器匹配顺序存在一个类中存在不同的类中 对于过滤器和拦截器中的异常#xff0c;有两种思路可以考虑 背景 在项目中我们有需求做一个全… 文章目录 背景分析使用ControllerAdviceRestControllerAdviceExceptionHandler实现全局异常全局异常处理-多个处理器匹配顺序存在一个类中存在不同的类中 对于过滤器和拦截器中的异常有两种思路可以考虑 背景 在项目中我们有需求做一个全局异常处理来规范所有出去的异常信息。 参考官方文档 分析 首先 ControllerAdvice(RestControllerAdvice ) ControllerAdvice 是无法处理过滤器和拦截器中的异常的。 引用一张图 下面介绍controller层的全局异常设置 全局异常处理也有多种方式 使用ControllerAdviceRestControllerAdviceExceptionHandler实现全局异常 import lombok.extern.slf4j.Slf4j; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ResponseBody;Slf4j ControllerAdvice public class GlobalExceptionHandler {/*** 处理参数错误的异常* param e* return*/ResponseBodyExceptionHandler(value IllegalParamsException.class)public ResultVOObject handleIllegalParamsException(IllegalParamsException e) {ResultVOObject resultVo new ResultVO();resultVo.setStatus(HttpStatus.BAD_REQUEST.value());resultVo.setErrorCode(e.getErrorInfo().getErrorCode());resultVo.setErrorMsg(e.getErrorInfo().getErrorDesc());return resultVo;}ResponseBodyExceptionHandler(value Exception.class)public ResultVOObject handleException(Exception e) {ResultVOObject resultVo new ResultVO();resultVo.setStatus(HttpStatus.INTERNAL_SERVER_ERROR.value());resultVo.setErrorMsg(e.getMessage());return resultVo;} } Data AllArgsConstructor NoArgsConstructor public class ResultVOT {private Integer status;private String errorCode;private String errorMsg;private T data;public ResultVO(Integer status, String errorCode, String errorMsg) {this.status status;this.errorCode errorCode;this.errorMsg errorMsg;} }public class IllegalParamsException extends RuntimeException {private static final long serialVersionUID -6298406656682893468L;private OperationErrorEnum errorInfo;public IllegalParamsException(OperationErrorEnum errorInfo) {this.errorInfo errorInfo;}public IllegalParamsException(String message, OperationErrorEnum errorInfo) {super(message);this.errorInfo errorInfo;}public IllegalParamsException(String message, Throwable cause, OperationErrorEnum errorInfo) {super(message, cause);this.errorInfo errorInfo;}public IllegalParamsException(Throwable cause, OperationErrorEnum errorInfo) {super(cause);this.errorInfo errorInfo;}public IllegalParamsException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace, OperationErrorEnum errorInfo) {super(message, cause, enableSuppression, writableStackTrace);this.errorInfo errorInfo;}public OperationErrorEnum getErrorInfo() {return errorInfo;} } 全局异常处理-多个处理器匹配顺序 参考参考 多个处理器的两种情况 存在一个类中 子类异常处理器优先 存在不同的类中 与多个异常处理类放入LinkedHashMap的顺序有关 可以利用Order指定顺序如果没有则默认最小顺序 那么如果都没有指定顺序的话那就是list中的顺序 对于过滤器和拦截器中的异常有两种思路可以考虑 1、catch后通过转发到异常页面设置ModelAndView 参考参考 2、拦截器中发生异常拦截器中直接返回错误通过response.getOutputStream().write() 直接写错误信息 如 Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {try {// 业务代码} catch (Exception e) {response.setContentType(MediaType.APPLICATION_JSON_UTF8_VALUE);ResultVOObject resultVo new ResultVO();resultVo.setStatus(HttpStatus.UNAUTHORIZED.value());resultVo.setErrorMsg(ACCESS_PARAM_ERROR.getErrorDesc());response.getOutputStream().write(new String(JSON.toJSONString(resultVo)).getBytes(StandardCharsets.UTF_8));logger.error( WhiteListAndAuthenticationInterceptor拦截器拦截到了方法{} 解析鉴权参数异常 , methodName);return false;}}
http://www.dnsts.com.cn/news/186384.html

相关文章:

  • 免费软件库下载天津百度seo
  • 易语言可以做网站娄底市住房和城乡建设局网站
  • 武陟外贸英文网站建设沈阳建网站
  • 找做网站的公司需要注意什么安卓手机网页视频怎么下载
  • 中山网站建设模板招商广告宣传方式有哪些
  • 网站搭建有分谷歌挂机宝 可以做网站
  • 白沙网站建设建立网站的风险
  • 瑞幸咖啡网站建设方案酒店行业的网站建设
  • 网站的推广费用票可以做抵扣吗h5收款平台
  • 自己做公司网站需要什么项目建设方案怎么写
  • 建设论坛网站需要多少钱杭州明开seo
  • html5 触屏网站 案例海南网站建设公司哪家好
  • 鹤壁商城网站建设Tp5即做网站又提供api接口
  • 有域名后如何建网站国家认可的赚钱平台
  • 贵阳网站建设多钱钱北京室内设计公司排名
  • 只做dnf的网站网站域名在哪里申请
  • 做原型的素材网站网站建设 服务承诺
  • 中国最有名的建设网站如何修改wordpress模板栏目的属性
  • 苏州吴中区建设局工程网站wordpress 文件服务
  • 网站的页面动态需要哪些方法做本地网站建设教程xampp
  • 网站建设市区顶尖设计
  • 做公司年报网站登录密码是什么夜场网站建设
  • 国外知名设计网站大全360建网站
  • 网站制作详细流程查企业法人电话大全
  • 深圳优化网站关键词打开百度网址
  • 网站关键词优化网站推广php网站访问很慢
  • 应用公园app制作教程windows10优化大师
  • 哪里可以免费申请空间 注册域名 申请网站wordpress在线优化
  • 西安竞价推广托管网站建设与优化及覆盖率方案
  • 个人主页建站网站建设win2012