1、lombok工具的使用
1、未使用lombok之前的测试类如下:
package com.imooc.sell;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest
public class LoggerTest {
//引入日志
private final Logger logger = LoggerFactory.getLogger(LoggerTest.class);
@Test
public void test1() {
logger.info("info....");
logger.debug("debug....");
logger.error("error....");
}
}
2、在pom.xml文件中加入lomback依赖后,代码如下:
package com.imooc.sell;
import lombok.extern.slf4j.Slf4j;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest
//增加该注解
@Slf4j
public class LoggerTest {
@Test
public void test1() {
//直接使用log对象打印日志
log.info("info log....");
log.debug("debug log....");
log.error("error log....");
}
}
2、日志的配置
1、application.yml配置(简单,功能单一):
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
username: root
password: 123456
url: jdbc:mysql://192.168.19.69/sell?characterEncoding=utf-8&useSSL=false
jpa:
show-sql: true
server:
context-path: /wyh_sell
##############日志相关信息配置##############
logging:
# 配置日志的格式
pattern:
console: "%d - %msg%n"
# 配置日志的输出路径(默认是spring.log)
path: D:/log
# 指定将日志输出到某个文件中(file和path取其中一个即可)
file: D:/log/shell.log
#级别
level: debug
2、logback-spring.xml配置(复杂,功能强大):
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<!--第一个配置项:这里是日志输出格式-->
<appender name="consoleLogger" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>
%d - %msg%n
</pattern>
</layout>
</appender>
<!--第二个配置项:将info日志输出到哪个info文件中-->
<appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!--只保存info类型的日志-->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>DENY</onMatch>
<onMismatch>ACCEPT</onMismatch>
</filter>
<encoder>
<pattern>
%msg%n
</pattern>
</encoder>
<!--滚动策略-->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--路径-->
<fileNamePattern>D:/log/info.%d.log</fileNamePattern>
</rollingPolicy>
</appender>
<!--第三个配置项:将日志输出到哪个错误日志文件中-->
<appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!--只保存error类型的日志-->
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>ERROR</level>
</filter>
<encoder>
<pattern>
%msg%n
</pattern>
</encoder>
<!--滚动策略-->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--路径-->
<fileNamePattern>D:/log/error.%d.log</fileNamePattern>
</rollingPolicy>
</appender>
<!--引用哪个配置-->
<root level="info">
<appender-ref ref="consoleLogger"/>
<appender-ref ref="fileInfoLog"/>
<appender-ref ref="fileErrorLog"/>
</root>
</configuration>