Java基础入门day74

day74

Mybatis

日志

简介

mybatis有默认的日志实现,之前我们在mybatis的核心配置文件中设置logImpl值为STDOUT_LOGGING,就可以在控制台输出对应的SQL语句日志信息,好处不使用任何第三方jar包即可支持,但是仅限于控制台的输出,而且控制台可以看到的内容非常有限,最早的日志可能会因为日志内容过多而被"卷进去"而看不见。

复制代码
 <setting name="logImpl" value="SLF4J | LOG4J | LOG4J2 | JDK_LOGGING | COMMONS_LOGGING | STDOUT_LOGGING | NO_LOGGING"/>

mybatis也支持第三方jar包方式,本次以LOG4J为例

实现
  1. pom.xml中添加log4j的依赖

    复制代码
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.17</version>
    </dependency>
  2. 在classpath中添加log4j.properties文件

  3. 配置log4j的配置文件内容

    复制代码
    log4j.rootLogger = debug,stdout,D,E
    ​
    ### ???????? ###
    log4j.appender.stdout = org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.Target = System.out
    log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
    ​
    ### ??DEBUG ????????=DEBUG.log ###
    log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.D.File = DEBUG.log
    log4j.appender.D.Append = true
    log4j.appender.D.Threshold = DEBUG 
    log4j.appender.D.layout = org.apache.log4j.PatternLayout
    log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n
    ​
    ### ??ERROR ????????=error.log ###
    log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.E.File =error.log 
    log4j.appender.E.Append = true
    log4j.appender.E.Threshold = ERROR 
    log4j.appender.E.layout = org.apache.log4j.PatternLayout
  4. 运行项目之后,同时会在控制台和对应的日志文件中有日志信息的打印

特点

日志框架描述:

日志级别有:

  • debug:调试

  • info:信息

  • warn:警告

  • error:错误

一般在平时开发过程中使用debug即可,看到比较详细的日志信息

一旦上线之后,设置为error级别,信息量会少一些

上面四个级别分别是从低到高,设置低优先级的,高优先级也是可以看到

设置高优先级的,低优先级看不到

这个日志级别有的日志里面还有trace追踪fatal致命错误两个级别

相关推荐
superxxd1 小时前
跨平台音频IO处理库libsoundio实践
开发语言·qt·音视频
没有bug.的程序员2 小时前
服务网格 Service Mesh:微服务通信的终极进化
java·分布式·微服务·云原生·service_mesh
_OP_CHEN2 小时前
C++基础:(十二)list类的基础使用
开发语言·数据结构·c++·stl·list类·list核心接口·list底层原理
南尘NCA86665 小时前
企业微信防封防投诉拦截系统:从痛点解决到技术实现
java·网络·企业微信
ONE_PUNCH_Ge5 小时前
Go 语言变量
开发语言
幼稚园的山代王5 小时前
go语言了解
开发语言·后端·golang
晚风残5 小时前
【C++ Primer】第六章:函数
开发语言·c++·算法·c++ primer
满天星83035776 小时前
【C++】AVL树的模拟实现
开发语言·c++·算法·stl
怪兽20146 小时前
SQL优化手段有哪些
java·数据库·面试