springboot+vue——10

    科技2022-07-11  99

    文章目录

    1.特定异常2.自定义异常3.统一日志处理

    1.特定异常

    在@ExceptionHandler()里指定异常,这里拿ArithmeticException举例

    @ExceptionHandler(ArithmeticException.class) @ResponseBody public R error(Exception e){ e.printStackTrace(); return R.error().message("执行全局异常处理"); }

    2.自定义异常

    2.1先创建自定义异常类

    2.2继承RuntimeException 2.3定义提示信息和状态码

    package com.neusoft.servicebase.exceptionhandler; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @Data @AllArgsConstructor//有参构造 @NoArgsConstructor//无参构造 public class EduException extends RuntimeException{ private Integer code;//状态码 private String msg;//异常信息 }

    2.4在公共的异常类里编写自定义异常处理

    //自定义异常处理 @ExceptionHandler(EduException.class) @ResponseBody public R EduException(EduException e){ e.printStackTrace(); return R.error().code(e.getCode()).message(e.getMsg()); }

    2.5执行自定义异常 自定义异常需要手动抛出

    try { int a = 10/0; }catch(Exception e) { throw new EduException(20001,"出现自定义异常"); }

    3.统一日志处理

    3.1日志记录器(Logger)等级 分为:OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL 默认是info 3.2设置日志级别 3.3把日志输出到控制台,且保存到日志文件中 先删掉之前的设置 3.3.1resources 中创建 logback-spring.xml 文件名固定 3.3.2xml内容 三处讲解 ①日志文件保存的路径(没有该路径会自动创建) property name=“log.path” value=“A:/log/edu” ②可以输出项目中的debug日志,包括mybatis的sql日志 logger name=“com.neusoft” level=“INFO” />这个是项目 ③ dev(开发环境) 和 pro(生产环境) springProfile name=“pro”

    <?xml version="1.0" encoding="UTF-8"?> <configuration scan="true" scanPeriod="10 seconds"> <!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL,如果设置为WARN,则低于WARN的信息都不会输出 --> <!-- scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true --> <!-- scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 --> <!-- debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 --> <contextName>logback</contextName> <!-- name的值是变量的名称,value的值时变量定义的值。通过定义的值会被插入到logger上下文中。定义变量后,可以使“${}”来使用变量。 --> <!-- 日志输出的路径 --> <property name="log.path" value="A:/log/edu" /> <!-- 彩色日志 --> <!-- 配置格式变量:CONSOLE_LOG_PATTERN 彩色日志格式 --> <!-- magenta:洋红 --> <!-- boldMagenta:粗红--> <!-- cyan:青色 --> <!-- white:白色 --> <!-- magenta:洋红 --> <property name="CONSOLE_LOG_PATTERN" value="%yellow(
    转载请注明原文地址:https://blackberry.8miu.com/read-3157.html
    最新回复(0)