MyBatis~日志工厂logImpl中: STDOUT_LOGGING和LOG4J的使用
MyBatis~日志工厂logImpl中: STDOUT_LOGGING和LOG4J的使用
文章目录
设置开启logImpl
STDOUT_LOGGING的使用
LOG4J的使用
LOG4J不能直接使用要有一个配置过程
如何自定义类使用LOG4J
在MyBatis配置文件最前面进行设置开启
然后就可以直接运行, 它自动会在控制台输出日志
仔细读日志就可以发现我们使用的数据库愿是POOLED, 因为新建了一个connection最后并没有关闭, 而是将这个connection交回到了pool, 并且我们也可以很清楚看到我们的sql语句, 也可以很清楚看到我们的数据库列名和查到的数据
Log4j是Apache的一个开源项目
通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等
可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程
最爽的就是可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
LOG4J不能直接使用要有一个配置过程
第一步
加入log4j-1.2.17.jar(可以选择log4j的更高版本)到lib下。
如果使用maven项目,也可以选择在pom.xml中新增依赖:
log4j
log4j
1.2.17
第二步
在CLASSPATH下建立log4j.properties。如果是maven项目在resources目录下建立该文件
内容如下
#将等级为DEBUG的日志信思输出到console控制台和file文件这两个目的地,console和fiLe的定义在下面的代码
log4j.rootLogger=DEBUG,CONSOLE,file
#控制台输出的相关设置
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
#输出方式
log4j.appender.CONSOLE.Target = System.out
#输出级别
1og4j.appender.CONSOLE.Threshold=DEBUG
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
#输出格式
log4j.appender.CONSOLE.layout.ConversionPattern=[%c]-%m%n
#文件输出的相关设置
log4j.appender.file=org.apache.log4j.RollingFileAppender
#输出文件的目录
log4j.appender.file.File=./log/mybatis.1og
#输出文件的最大存储量
log4j.appender.file.MaxFileSize=10mb
1og4j.appender.file.Threshold=DEBUG
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[%p][%d{yy-M-dd}][%C]%m%n
#日志输出级别
log4j.logger.org.mybatis=DEBUG
log4j.logger.java.sq1=DEBUG
log4j.logger.java.sql.statement=DEBUG
log4j.logger.java.sq1.ResultSet=DEBUG
log4j.logger.java.sq1.PreparedStatement=DEBUG
第三步
相应的修改设置开始LOG4J
第四部
测试
当然不光控制台我们的文件中也会记录日志
如何自定义类使用LOG4J
将上述配置做好之后
第一步
在你类中属性字段中添加如下代码, 注意传入的class对象是你要使用的类
static Logger logger = Logger.getLogger(Test.class);
第二步
在你需要使用日志输出的地方添加如下代码
@org.junit.Test
public void log4j() {
logger.debug("进入方法");
logger.info("开始");
try {
throw new Exception("错误");
} catch (Exception e) {
logger.error(e.getMessage());
}
//还可以这样使用
if (logger.isDebugEnabled()) {
logger.debug("离开方法");
}
}
第三步
测试
logger日志的使用级别debug
MyBatis~日志工厂logImpl中: STDOUT_LOGGING和LOG4J的使用相关教程
MyBatis源码阅读指南
MyBatis源码阅读指南 MyBatis源码阅读指南 概要: 前言 整体架构 学习重点 学习路径 总结 注:文本有4301个字,预计阅读11分钟,请君耐心 前言 在MyBatis 3.5.1这个版中有968个类、2770个字段、8422个方法、42504行代码、186428个指令码。其源码体量只有Sprin
springboot日志集成(1):Logback log4j2
springboot日志集成(1):Logback log4j2 前言: java有许多的日志组件,比如 log4j,log4j2,logback还有java自生提供的Java Util Logging,其实在springboot中对这些组件都提供了支持,log4j,log4j2和logback都提供相应的组件支持。 一、Logback 1)在springb
MyBatis打工人——sql配置文件详解
MyBatis打工人——sql配置文件详解 这一篇,老多代码了,我的天。我用了经典的emp表和dept表做演示。加油!打工人。(看到隔壁的铁人为了调休奋战了36小时没睡,我陷入入了沉思) Mybatis SQL映射 在SQL映射文件中,有需要的顶级元素标签:--cache – 该命名
大话设计模式——简单工厂
大话设计模式——简单工厂 工作了两年,之前只是知道设计模式这个东西,并没有很系统的学过,在写代码的过程中意识到这个东西他还真的很有用,正好也再看大话设计模式这本书,觉得应该好好研究下了,在博客记录下来,感觉大部分都会跟书上一样,我希望可以尽
【Mybatis用法】Mybatis 高级结果映射,ResultMap Association,
【Mybatis用法】Mybatis 高级结果映射,ResultMap Association,mybatis的一对多,多对一,以及多对对的配置和使用 本文目录 一、背景描述 二、解决方案 方法1 方法2 方法3 一、背景描述 需求:查询任务逾期记录时,把任务相关信息查询出来; 表设计:任务相
MyBatis08-(动态SQL)
MyBatis08-(动态SQL) 官方文档 MyBatis 的强大特性之一便是它的动态 SQL。如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句的痛苦。例如拼接时要确保不能忘记添加必要的空格,还要注意 去掉列表最后一个列名的逗号。利用动态
Mybatis入门教程(二) 配置解析及优化
Mybatis入门教程(二) 配置解析及优化 mybatis-config.xml 是系统核心配置文件,包含了会深深影响 MyBatis 行为的设置和属性信息,能配置的内容如下(需要按照这个顺序配置,否则会报错): 1.environments元素 配置MyBatis的多套运行环境,将SQL映射到多个
ELK日志文件分析系统、Logstash、ElasticSearch和Kiabana三个开
ELK日志文件分析系统、Logstash、ElasticSearch和Kiabana三个开源工具组成(实例部署过程) ELK日志文件分析系统 一、 ELK日志文件系统的介绍 二、ElasticSearch的集群安装与搭建 软件包安装节点介绍 三、Logstash工具的介绍与安装 软件包得下在地址在 1、Log