前言

最近小编切实无聊,每天看着IDEA的控制台打印,丑到爆,切实不爽,影响我粘贴复制的速度,于是来一波炫酷的操作,其实就是单纯的为了好玩,炫酷!!!!!!真的是这样吗?不,那是必须要把握的常识,学SpringBoot 这都不晓得,你就OUT了,明天咱们再来回顾一波,集成logback,打印黑白日志以及制作启动banner。

一、banner配置

先上成果:

看到么有?炫酷吧!!

1.1 banner图像在线生成工具

https://www.bootschool.net/ascii/

生成之后,间接下载banner.txt文件到SpringBoot工程目录下:

1.2 banner配置色彩

配置色彩能够设置背景色彩和字体色彩:

${AnsiColor.GREEN}  // 字体色彩${AnsiBackground.BLACK} // 背景色彩

字体色彩可配置属性如下图:

背景色彩可配置属性如下图:

额定配置其余参数(如SpringBoot版本号):

${spring-boot.version}

1.3 banner启动状态管制

如果咱们想启动的时候,不要banner,咱们能够敞开它,在SpringBoot入口启动类进行设置,增加如下代码:

/** * 后盾启动器 * @author DT * @date 2021/6/2 21:37 */@SpringBootApplication@MapperScan("com.dt.app.api.*.mapper")public class ManageApplication {    public static void main(String[] args) {        SpringApplication app = new SpringApplication(ManageApplication.class);        // 设置Banner开启状态        app.setBannerMode(Banner.Mode.LOG);        app.run(args);    }}
LOG // 代表开启OFF // 代表敞开

当咱们设置成OFF的时候,测试一下成果如下图:


二、logback黑白日志配置

效果图:

2.1 引入依赖

如果是Spring Boot我的项目,只须要web依赖即可。

<dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-web</artifactId></dependency>

网上很多教程引入了spring-boot-starter-logging这个依赖,其实不必,因为咱们自身就是SpringBoot web我的项目,当咱们引入web依赖的时候,就帮咱们引入了logging相干的依赖配置了,所以咱们不须要再额定引入,如下:

2.2 logback-spring.xml配置

默认状况下,Spring Boot会用Logback来记录日志,并用INFO级别输入到控制台,在运行应用程序时,能够看到在未手动配置的状况下曾经输入了很多INFO级别的日志。

日志根本从高到到低: OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL
Spring Boot官网举荐优先应用带有-spring的文件名作为你的日志配置(如应用logback-spring.xml,而不是logback.xml),命名为logback-spring.xml的日志配置文件,spring boot能够为它增加一些spring boot特有的配置项

下面是默认的命名规定,放在src/main/resources上面即可。

当然你也能够改名称,在springboot配置文件中通过logging.config属性指定自定义的名字。

logging.config=classpath:logging-config.xml

2.3 logback-spring.xml官网黑白配置

这里咱们参考官网举荐的配置形式,配置黑白日志属性:

http://logback.qos.ch/manual/layouts.html#coloring

控制台打印黑白日志配置形式:

%d{yyyy-MM-dd HH:mm:ss} [%thread] %magenta(%-5level) %green([%-50.50class]) >>> %cyan(%msg) %n
打印输出:工夫、线程名称、日志级别、Logger名、日志内容
<!--格式化输入:%d示意日期,%thread示意线程名,%-5level:级别从左显示5个字符宽度%msg:日志音讯,%n是换行符-->

日志输入到文件:

日志输入到文件,随着利用的运行工夫越来越长,日志也会增长的越来越多,将他们输入到同一个文件并非一个好方法。RollingFileAppender用于切分文件日志:

上面是小编的残缺配置:

<?xml version="1.0" encoding="UTF-8"?><configuration>    <property name="LOG_PATH" value="logs" />    <property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] %-40.40logger{39} : %msg%n" />    <!-- 控制台输入 -->    <appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender">        <!-- 黑白日志 -->        <layout class="ch.qos.logback.classic.PatternLayout">            <pattern>                %d{yyyy-MM-dd HH:mm:ss} [%thread] %magenta(%-5level) %green([%-50.50class]) >>> %cyan(%msg) %n            </pattern>        </layout>    </appender>    <!-- 依照每天生成日志文件 -->    <appender name="fileLog"  class="ch.qos.logback.core.rolling.RollingFileAppender">        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">            <!--日志文件输入的文件名-->            <FileNamePattern>${LOG_PATH}/cms.%d{yyyy-MM-dd}.%i.log</FileNamePattern>            <!--日志文件最大的大小-->            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">                <maxFileSize>100MB</maxFileSize>            </timeBasedFileNamingAndTriggeringPolicy>            <!--日志文件保留天数-->            <MaxHistory>30</MaxHistory>        </rollingPolicy>        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">            <pattern>${LOG_PATTERN}</pattern>        </encoder>    </appender>    <!-- 日志输入级别 -->    <root level="info">        <appender-ref ref="consoleLog" />        <appender-ref ref="fileLog" />    </root></configuration>

完结!!!!!!!!!!!!!!!!

总结

好了,明天的内容就到这里,喜爱的小伙伴点个赞吧,关注小编,每天都会推出日常开发干货,感觉播种满满,一起致力朝着全栈技术大佬致力,当你累的时候,就劳动吧,喜爱是一种态度,保持才是态度的体现,生存如此,编程如此,慢慢来!!!!!!