前言
使用于普通的maven项目。通过下列的顺序配置,可以实现主线程和运行线程的显示,方便多线程的学习。
一、POM文件
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.10</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
</dependencies>
二、resources下logback.xml
logback.xml:
<?xml version="1.0" encoding="UTF-8"?>
<configuration
xmlns="http://ch.qos.logback/xml/ns/logback"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ch.qos.logback/xml/ns/logback logback.xsd">
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<!--%date{HH:mm:ss.SSS} %c -->
<pattern>%date{HH:mm:ss.SSS} %c [%t] - %m%n</pattern>
</encoder>
</appender>
<!--<logger name="org.springframework.security.web.FilterChainProxy" level="DEBUG" additivity="false">
<appender-ref ref="STDOUT"/>
</logger>
<logger name="org.springframework.security.web.access.intercept.FilterSecurityInterceptor" level="DEBUG" additivity="false">
<appender-ref ref="STDOUT"/>
</logger>-->
<!--<logger name="org.springframework.security.web" level="DEBUG" additivity="false">
<appender-ref ref="STDOUT"/>
</logger>-->
<logger name="c" level="debug" additivity="false">
<appender-ref ref="STDOUT"/>
</logger>
<root level="ERROR">
<appender-ref ref="STDOUT"/>
</root>
</configuration>
三、测试
Test.java:
package n8;
import lombok.extern.slf4j.Slf4j;
@Slf4j(topic = "c.Test")
public class Test {
public static void main(String[] args) {
log.debug("主线程运行");
new Thread(()->{
log.debug("多线程运行");
}).start();
}
}
注意:
(1)@Slf4j(topic = “c.Test”)的Test和class名保持一致。
(2)使用log.debug()打印日志信息。
结果
分别打印主线程和多线程的运行结果。