
Mybatis--LOG4J日志工厂
发布日期:2021-05-06 01:04:52
浏览次数:20
分类:技术文章
本文共 3207 字,大约阅读时间需要 10 分钟。
1. LOG4J日志工厂
1.1 什么是LOG4J?
- Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件;
- 我们也可以控制每一条日志的输出格式;
- 通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程;
- 最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
1.2 使用LOG4J
1.2.1 先导入log4j的依赖
pom.xml
log4j log4j 1.2.17
1.2.2 LOG4J配置文件
#将等级为DEBUG的日志信息输出到console和file这两个目的地,console和file的定义在下面的代码log4j.rootLogger=DEBUG,console,file#控制台输出的相关设置log4j.appender.console=org.apache.log4j.ConsoleAppenderlog4j.appender.console.Target=System.outlog4j.appender.console.Threshold=DEBUGlog4j.appender.console.layout=org.apache.log4j.PatternLayoutlog4j.appender.console.layout.ConversionPattern=[%c]-%m%n#文件输出的相关设置log4j.appender.file=org.apache.log4j.RollingFileAppenderlog4j.appender.file.File=./log/tj.loglog4j.appender.file.MaxFileSize=10mblog4j.appender.file.Threshold=DEBUGlog4j.appender.file.layout=org.apache.log4j.PatternLayoutlog4j.appender.file.layout.ConversionPattern=[%p][%d{yy-MM-dd}][%c]%m%n# 设置写入的日志文件为重写覆盖log4j.appender.file.Append=false#日志输出级别log4j.logger.org.mybatis=DEBUGlog4j.logger.java.sql=DEBUGlog4j.logger.java.sql.Statement=DEBUGlog4j.logger.java.sql.ResultSet=DEBUGlog4j.logger.java.sq1.PreparedStatement=DEBUG
1.2.3 配置settings为LOG4J实现
mybatis-config.xml
1.2.4 4.测试运行
UserMaper.xml
UserMapperTest.java
public void test() { // 获取SqlSession对象 try (SqlSession sqlSession = MybatisUtils.getSqlSession()) { // 执行sql// 方式1: getMapper UserMapper mapper = sqlSession.getMapper(UserMapper.class); User userById = mapper.getUserById(2); System.out.println(userById);// 方式2: 不推荐// ListuserList = sqlSession.selectList("com.tian.dao.UserDao.getUserList"); } catch (Exception e) { e.printStackTrace(); } // 关闭资源非常重要 关闭session }
运行结果:

当前项目里面多了个tj.log文件

1.3 LOG4J简单使用
1.3.1 导入包 import org.apache.log4j.Logger;
要使用Log4j的类中,导入包 import org.apache.log4j.Logger;
1.3.2日志对象,参数为当前类的class对象
Logger logger = Logger.getLogger(UserDaoTest.class);
1.3.3 日志级别
logger.info("info: 进入了testLog4j"); logger.debug("debug: 进入了testLog4j"); logger.error("error: 进入了testLog4j");
1.3.4 运行程序

1.4 可以自定义LOG4J的日志格式
log4j.properties

运行:
@Test public void testLog4j() { logger.info("info: 进入了testLog4j"); logger.debug("debug: 进入了testLog4j"); logger.error("error: 进入了testLog4j"); }
运行结果:
日志文件

1.5 LOG4J总结
以后尽量使用LOG4J来记录日志,别使用System.out.println()
1.4.1 示例:
@Test public void test() { // 获取SqlSession对象 try (SqlSession sqlSession = MybatisUtils.getSqlSession()) { // 执行sql// 方式1: getMapper UserMapper mapper = sqlSession.getMapper(UserMapper.class); User userById = mapper.getUserById(2); logger.info("user的信息: " + userById);// 方式2: 不推荐// ListuserList = sqlSession.selectList("com.tian.dao.UserDao.getUserList"); } catch (Exception e) { e.printStackTrace(); } // 关闭资源非常重要 关闭session }
运行结果:


怎么样,是不是感觉到非常舒服,啊哈哈,啊哈哈
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2025年03月23日 03时03分23秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
编写测试用例的实用小技巧
2019-03-03
c语言贪吃蛇控制台版
2019-03-03
Windows10 下springboot应用无法被外部网络访问
2019-03-03
对象和封装
2019-03-03
同时在写四门编程语言是怎样一种体验?
2019-03-03
【树形dp】P1273 有线电视网
2019-03-03
【分层图最短路】P4568 [JLOI2011]飞行路线
2019-03-03
【最短路】P4408 [NOI2003]逃学的小孩
2019-03-03
2020C证(安全员)模拟考试题及C证(安全员)模拟考试系统
2019-03-03
2020A证(安全员)模拟考试及A证(安全员)证考试
2019-03-03
2020电工(初级)考试及电工(初级)考试软件
2019-03-03
2020建筑电工(建筑特殊工种)实操考试视频及建筑电工(建筑特殊工种)作业模拟考试
2019-03-03
2020N1叉车司机模拟考试题库及N1叉车司机复审模拟考试
2019-03-03
2020熔化焊接与热切割考试及熔化焊接与热切割考试题库
2019-03-03
2020年G3锅炉水处理报名考试及G3锅炉水处理考试申请表
2019-03-03
2020年制冷与空调设备运行操作答案解析及制冷与空调设备运行操作考试总结
2019-03-03
2020年保育员(初级)考试资料及保育员(初级)新版试题
2019-03-03
2020年茶艺师(高级)考试内容及茶艺师(高级)考试申请表
2019-03-03