创建普通maven工程
略
修改pom.xml
添加下面依赖:
<dependencies>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
</dependencies>
logback.xml 配置文件
在 resources 目录下创建 logback.xml 文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<configuration >
<!-- >>>>>>>>>>>>>>>>>>>>>>>>>配置appender(对日志的处理方法,可以配置多个)>>>>>>>>>>>>>>>>>>>>>>>>> -->
<!--
name:自定义,
class:加载 ch.qos.logback.core.ConsoleAppender类会将日志输出到控制台
patter:指定输出的日志格式
-->
<appender name="consoleAppender"
class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36}:%L- %msg%n</pattern>
<!-- 日志编码 -->
<charset class="java.nio.charset.Charset">UTF-8</charset>
</encoder>
</appender>
<!--
root:logger的根节点,appender-ref:确定使用哪个appender
注:如果不指定配置此项,logback不生效
-->
<root level="info">
<appender-ref ref="consoleAppender" />
</root>
</configuration>
java
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Main {
static final Logger log= LoggerFactory.getLogger(Main.class);
public static void main(String[] args) {
String content="hello world!";
log.trace("trace级别:: {}",content);
log.debug("debug级别:: {}",content);
log.info("info级别:: {}",content);
log.warn("warn级别:: {}",content);
log.error("error级别:: {}",content);
// Mapper.test();
}
}
执行结果
控制台打印如下:
[INFO] --- exec-maven-plugin:3.0.0:exec (default-cli) @ std_slf4j_logback ---
09:04:36.193 [main] INFO top.malaoshi.Main:13- info级别:: hello world!
09:04:36.198 [main] WARN top.malaoshi.Main:14- warn级别:: hello world!
09:04:36.198 [main] ERROR top.malaoshi.Main:15- error级别:: hello world!
为什么显示这3行?
由于在配置文件中设置了 日志级别 是 info :
<root level="info">
<appender-ref ref="consoleAppender" />
</root>
所以,只有 日志打印级别 >= info,才会显示到控制台