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

iis7.5 部署网站网站敏感关键词

iis7.5 部署网站,网站敏感关键词,怎样免费做网站视频讲解,外国人做网站异常主要是包括编译时的异常和运行时的异常。编译时的异常可以通过捕获异常获取,运行时候的异常主要是通过代码规范,或者测试。 Spring Boot提供了两种异常处理方式来统一处理和维护异常信息。 第一种方式是使用RestControllerAdvice注解与ExceptionHand…

        异常主要是包括编译时的异常运行时的异常。编译时的异常可以通过捕获异常获取,运行时候的异常主要是通过代码规范,或者测试

        Spring Boot提供了两种异常处理方式来统一处理和维护异常信息

        第一种方式是使用@RestControllerAdvice注解与@ExceptionHandler注解配合使用。第二种方式是ErrorController类,因为第一种方式主要是捕获在接口类的异常,如果需要自定义处理特定的HTTP错误代码(404,401),未进入控制器的和自定义错误页面,则需要使用ErrorController。

        一般来说,只使用@RestControllerAdvice+@ExceptionHandler就够了。

  • @ControllerAdvice:可以用来实现对Controller全局异常处理,与传统的基于AOP的方法不同,使用@ControllerAdvice可以捕获所有Controller中抛出的异常,而无需在每个Controller中配置@ExceptionHandler。通过在该类中使用@ExceptionHandler注解,可以根据不同的异常类型定义相应的处理方法。 @ControllerAdvice需要配合@ExceptionHandler一起使用。

  • @RestControllerAdvice是集合了@ControllerAdvice+@ResponseBody的功能,只是以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,其包含了父类的一些异常处理机制,如堆栈轨迹,异常链的部分。则得在自定义异常类的构造方法中使用super(msg)

        通过super(respBeanEnum.getMsg())将错误消息传递给父类的构造方法,用于创建一个带有指定错误消息的自定义异常对象 SystemException

通过结合枚举类,可以有以下优势:

  1. 错误分类清晰明确:枚举类可以将各种错误类型进行分类,使得代码的错误处理更具可读性和可维护性。

  2. 统一管理错误信息:在枚举类中定义错误码和错误消息,可以集中管理和维护所有错误信息,方便后续的修改和扩展

  3. 可拓展性:通过扩展枚举类,可以轻松添加新的错误类型,而无需修改和添加大量的代码。

自定义全局异常处理:

@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.yayakq.cn/news/156956/

相关文章:

  • 做网站要那些设备企业所得税的计算公式
  • 非常好的资讯网站设计阿里云网站建设好用吗
  • 浙江有限公司网站室内装修设计学校哪里好
  • 做网站钱宁波网络seo哪家有名
  • python做简单的网站南京师范大学课程建设网站
  • 制作网页网站沈阳做网站直播的公司
  • jquery 购物网站注册公司在哪个网站
  • 乐辰科技网站建设丹阳市建设局网站
  • 信息网站建设情况工作会科技资讯网站有哪些
  • wordpress必须登录手机优化是什么意思
  • 建一个网站做cpa联盟wordpress放在哪
  • 网站快速备案安全吗网络营销师是做什么的
  • 中国民营企业500强网站seo去哪个网站找好
  • 中国市政建设局网站三门峡城乡建设局网站
  • 蓬莱做网站哪家好邹城网页设计
  • 网站营售西安做网站科技有限公司
  • 网站图标按钮用什么做wordpress插件jetpack
  • 怎么修改网站信息公司网站建设要注意什么问题
  • 网站建设存在的问题有哪些友情链接系统
  • 淮南做网站的公司WordPress附件下载插件
  • 东莞建设网站企业沟通平台网站建设尾款
  • 建一个平台网站一般需要多少钱com网站免费注册
  • 做 在线观看免费网站一家专做中式设计的网站
  • vue做的项目网站相城区网络营销公司
  • 自动化培训网站建设网站建设评分标准
  • 网站开发与设计作业上海网站建设的网站
  • 昆明哪个公司做网站建设最好外贸营销系统
  • 南昌网站开发公司电话施工企业是什么
  • 兰州网站建设q479185700強网站怎么做动静分离
  • 基于.NET的电子商务网站开发asp.net程序做的网站安全吗