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

整站快速排名河南那家做网站实力强

整站快速排名,河南那家做网站实力强,贵州热点新闻事件,厦门哪些企业做视频网站的异常主要是包括编译时的异常和运行时的异常。编译时的异常可以通过捕获异常获取#xff0c;运行时候的异常主要是通过代码规范#xff0c;或者测试。 Spring Boot提供了两种异常处理方式来统一处理和维护异常信息。 第一种方式是使用RestControllerAdvice注解与ExceptionHand…        异常主要是包括编译时的异常和运行时的异常。编译时的异常可以通过捕获异常获取运行时候的异常主要是通过代码规范或者测试。 Spring Boot提供了两种异常处理方式来统一处理和维护异常信息。 第一种方式是使用RestControllerAdvice注解与ExceptionHandler注解配合使用。第二种方式是ErrorController类因为第一种方式主要是捕获在接口类的异常如果需要自定义处理特定的HTTP错误代码404401未进入控制器的和自定义错误页面则需要使用ErrorController。 一般来说只使用RestControllerAdviceExceptionHandler就够了。 ControllerAdvice可以用来实现对Controller的全局异常处理与传统的基于AOP的方法不同使用ControllerAdvice可以捕获所有Controller中抛出的异常而无需在每个Controller中配置ExceptionHandler。通过在该类中使用ExceptionHandler注解可以根据不同的异常类型定义相应的处理方法。 ControllerAdvice需要配合ExceptionHandler一起使用。 而RestControllerAdvice是集合了ControllerAdviceResponseBody的功能只是以JSON格式返回处理结果。 创建个exception包在其中创建自定义异常类 自定义异常 public class SystemException extends RuntimeException { ​private int code; ​private String msg;//获取枚举类中的codepublic int getCode() {return code;}//获取枚举类中的msgpublic String getMsg() {return msg;} ​public SystemException(RespBeanEnum respBeanEnum) {//表示调用父类RuntimeException的构造方法并传入respBeanEnum.getMsg()作为参数super(respBeanEnum.getMsg());this.code respBeanEnum.getCode();//这个其实是多余的在super方法中就已经传了msg不过便于阅读。this.msg respBeanEnum.getMsg();} ​ } SystemException构造方法的参数是RespBeanEnum: 定义一个枚举类列出所有可能的错误类型并为每个错误类型指定一个对应的错误码和错误消息。然后在自定义异常类中引用该枚举类并使用其中的错误码和错误消息来初始化异常对象。 public enum RespBeanEnum { int code;String msg; SUCCESS(200, 操作成功),ERROR(500, 出现错误)RespBeanEnum(int code, String errorMessage) {this.code code;this.msg errorMessage;}public int getCode() {return code;} ​public String getMsg() {return msg;} } 解释1 super(respBeanEnum.getMsg())这个方法是调用父类的构造方法。最上面是 public Throwable(String message) {fillInStackTrace();detailMessage message; } 它的作用是利用父类的异常处理机制RuntimeExpetion其包含了父类的一些异常处理机制如堆栈轨迹异常链的部分。则得在自定义异常类的构造方法中使用supermsg 通过super(respBeanEnum.getMsg())将错误消息传递给父类的构造方法用于创建一个带有指定错误消息的自定义异常对象 SystemException。 通过结合枚举类可以有以下优势 错误分类清晰明确枚举类可以将各种错误类型进行分类使得代码的错误处理更具可读性和可维护性。 统一管理错误信息在枚举类中定义错误码和错误消息可以集中管理和维护所有错误信息方便后续的修改和扩展。 可拓展性通过扩展枚举类可以轻松添加新的错误类型而无需修改和添加大量的代码。 自定义全局异常处理 RestControllerAdvice Slf4j public class GlobalExceptionHandler {//处理自定义异常ExceptionHandler(SystemException.class)public RespBean systemExceptionHandler(SystemException e) {//打印异常信息log.error(出现了异常 {}, e);//从异常对象中获取提示信息封装返回//实际上e.getCode() 和 e.getMsg()返回的值就是枚举类定义的属性值return RespBean.errorResult(e.getCode(), e.getMsg());}//处理其他异常ExceptionHandler(Exception.class)public RespBean exceptionHandler(Exception e) {//打印异常信息log.error(出现了异常 {}, e);//从异常对象中获取提示信息封装返回return RespBean.errorResult(RespBeanEnum.SYSTEM_ERROR.getCode(), e.getMessage());} } ERROR(500, 出现错误),得到枚举类的code
http://www.hkea.cn/news/14272489/

相关文章:

  • 济南企业网站制京东app下载平台
  • 做网站网页兼容性ios应用程序开发
  • 韩国电信 网站2018企业网站优化应该怎么做
  • 益阳建设局网站做瓜子进出口用哪些网站
  • 建手机网站要多少钱南宁网站快
  • 网站恶意点击wordpress支付宝移动端
  • 宁波网站建设rswl做外贸用什么浏览国外网站
  • 网站建设 提供源码视觉传达设计主要学什么
  • 网上投资网站建设开发公众号 微网站开发
  • 定制做网站技术哈尔滨工程研究生招生信息网
  • 延吉有没有做网站的网站做权重的方法
  • 南京网站设计建设推荐外链工具软件
  • 深圳最新招聘seo综合查询站长工具怎么用
  • 有可以做国外支付系统的网站吗佛山优化网站
  • 网站跳出率高的原因聚名网备案域名
  • 旅游 便宜 网站建设中国建设银行网站特点
  • 网站的排版问题一个人看片免费高清
  • 太原智能化营销网站制作公司软件定制公司官网
  • 用ps做网站方法做网站 模板
  • 网站 网络推广天津网站建设 阿土伯
  • 网站建设费用如何列支东莞网络推广平
  • 手机上上建设网站天河企业网站建设
  • 锚文本外链网站光棍天堂手机2019版免费观看
  • 网站关键词设置技巧重庆网站推广平台
  • 网站建设教程(项目式)郑州企业的网站建设
  • 主机怎么装wordpress企业网站优化包括哪三个方面
  • 网站创造网页建站价格
  • 手机做wifi中继上外国网站积分商城平台
  • 北京网站制作公司排名做网站商城如何优化
  • 网站主页设计教程网站建设有什么价值