6.日志
6.1日志工厂
如果一个数据库操作,出现异常,我们需要排错,日志就是最好的助手
日志:日志工厂,具体用什么日志实现,在设置中设置
日志类型
-
SLF4J
-
LOG4J
-
LOG4J2
-
JDK_LOGGING
-
COMMONS_LOGGING
-
STDOUT_LOGGING
-
NO_LOGGING
如何配置日志
<settings>
<setting name="logImpl" value="STDOUT_LOGGING"/>
</settings>
标准的日志工厂实现输出
6.2log4j
6.2.1什么是log4j
log4j–log for java(java的日志)
- 通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;
- 我们也可以控制每一条日志的输出格式;
- 通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。
- 这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
6.2.2导入log4j的jar包
<!-- https://mvnrepository.com/artifact/log4j/log4j -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
6.2.3log4j.properties
log4j.rootLogger=DEBUG, CONSOLE, FILE
## for console
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Target=System.out
log4j.appender.CONSOLE.Threshold=DEBUG
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{MM-dd-HH:mm:ss}[%c-%L][%t][%-4r] - %m%n
## for file
log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.File=./logs/log4j.log
log4j.appender.FILE.MaxFileSize=5MB
log4j.appender.FILE.Threshold=DEBUG
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss} [%t] %-5p %c(line-%L) %-4r %x - %m%n
#日志输出级别
log4j.logger.org.mybatis=DEBUG
log4j.logger.java.sql=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.ResultSet=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
6.2.4配置setting
<settings>
<setting name="logImpl" value="LOG4J"/>
</settings>
6.2.5log4j的使用
public class UserMapperTest {
public static Logger logger = Logger.getLogger(UserMapperTest.class);
@Test
public void LogjTest(){
logger.info("info:......");
logger.debug("debug:......");
logger.error("error:......");
}
}