Log4j

主要的功能在控制台输出固定格式的日志,把日志写在文件方便上线后的系统维护

整合步骤

添加jar包到lib文件下

Hibernate整合log4j_hibernate


slf4j-log4j12-1.7.2.jar起桥接作用

是slf4j-api-1.6.1.jar和log4j-1.2.16.jar的桥梁

导入log4j.propertie文件到项目src目录中

Hibernate整合log4j_apache_02

日志配置

### direct log messages to stdout  ###
#控制台处理类
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
#控制台输出源布局layout
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

### direct messages to file hibernate.log 将消息定向到文件 ###
#文件处理类
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=C:/Users/LIANG/Desktop/test/hibernate.log
#文件输出源布局layout
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

### set log levels - for more verbose logging change 'info' to 'debug' ###

# 记录器 输出源 布局
log4j.rootLogger=info, stdout,file

重点

记录器warn

日志级别 fatal致命错误 error错误 warn警告 info信息 debug测试信息 trace堆栈信息(由高到底顺序)
如果定义warn的话 fatal error warn都会显示 级别高的都会显示

输出源shdoutfile (控制台 文件)
控制台shdout和指定文件路径file都是输出源头 可以配置多个

日志对象的使用

import org.ccit.com.uitls.HibernateUtils;
import org.hibernate.Session;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
* @program: Hibernate_01
* @description
* @author: LIANG
* @create: 2021-03-11 21:02
**/
public class HibernateTest10_log {
Logger logger= LoggerFactory.getLogger(HibernateTest10_log.class);
@Test
public void methdo01(){
Session session = HibernateUtils.openSession();
session.getTransaction().begin();

//1,创建日志对象
//2,调用日志对象的的方法

logger.error("error........");//错误
logger.warn("warn...........");//警告
logger.info("info..........");//信息


session.getTransaction().commit();
session.close();
}
}