POM依赖:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.0</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>0.9.28</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>0.9.28</version>
<type>jar</type>
</dependency>
logback配置
<?xml version="1.0" encoding="UTF-8"?>
<!-- Logback Configuration. -->
<configuration debug="true">
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<target>System.out</target>
<encoding>UTF-8</encoding>
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>%d{yy-MM-dd HH:mm:ss} |-%-5p [%c %L] %m%n</pattern>
</layout>
</appender>
<appender name="STDERR" class="ch.qos.logback.core.ConsoleAppender">
<target>System.err</target>
<encoding>UTF-8</encoding>
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>%d{yy-MM-dd HH:mm:ss} |-%-5p [%c %L] %m%n</pattern>
</layout>
</appender>
<logger name="com.log.dao" level="INFO">
<appender-ref ref="STDOUT" />
</logger>
<root>
<level value="DEBUG"/>
<appender-ref ref="STDERR"/>
<appender-ref ref="STDOUT"/>
</root>
</configuration>
自定义Log工具类
package com.wb.ss;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class LogUtil {
private static final Logger logger = LoggerFactory.getLogger(LogUtil.class);
public static void e(String m){
logger.error(m);
}
public static void d(String m){
logger.debug(m);
}
public static void i(String m){
logger.info(m);
}
public static void w(String m){
logger.warn(m);
}
}
输出格式:
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>%d{yy-MM-dd HH:mm:ss} |-%-5p [%c %L] %m%n</pattern>
</layout>
这里就是配置格式的,以下是各个参数的说明
%m输出代码中指定的消息
%p输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
%r输出自应用启动到输出该log信息耗费的毫秒数
%c输出所属的类目,通常就是所在类的全名
%t输出产生该日志事件的线程名
%n输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n”
%d输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM ddHH:mm:ss,SSS},输出类似:2017年03月01日 14:10:28,921
%L输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)