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致命错误两个级别

相关推荐
橙露1 分钟前
JavaScript 异步编程:Promise、async/await 从原理到实战
开发语言·javascript·ecmascript
qq_4160187220 分钟前
C++中的模板方法模式
开发语言·c++·算法
启山智软34 分钟前
【启山智软智能商城系统技术架构剖析】
java·前端·架构
一线大码35 分钟前
Java 使用国密算法实现数据加密传输
java·spring boot·后端
我命由我1234541 分钟前
Android Gradle - Gradle 自定义插件(Build Script 自定义插件、buildSrc 自定义插件、独立项目自定义插件)
android·java·java-ee·kotlin·android studio·android-studio·android runtime
Riu_Peter44 分钟前
【技术】Maven 配置 settings.xml 轮询下载
xml·java·maven
Rust语言中文社区1 小时前
【Rust日报】用 Rust 重写的 Turso 是一个更好的 SQLite 吗?
开发语言·数据库·后端·rust·sqlite
十六年开源服务商1 小时前
2026年WordPress网站地图完整指南
java·前端·javascript
Edward111111112 小时前
3月17枚举
java·开发语言
Emberone2 小时前
从C到C++:一脚踹开面向对象的大门
开发语言·c++