• (01)明明配置了log4j.properties为什么还是不打印日志


      (1)先说一下log4j依赖的3个jar:

      slf4j-api-1.7.7.jar

      slf4j-log4j12-1.7.7.jar

      log4j-1.2.17.jar

      那些commons-xxx-xxx.jar不用,比如:commons-logging-1.2.jar,请看截图:

      (2)log4j.properties文件

     1 log4j.rootLogger=info,CONSOLE,FILE
     2 
     3 log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
     4 log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
     5 log4j.appender.CONSOLE.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss} %C{1}@(%F:%L):%m%n
     6 
     7 log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender
     8 log4j.appender.FILE.File=${catalina.base}/logs/spring-web.log
     9 log4j.appender.FILE.Encoding=utf-8
    10 log4j.appender.FILE.DatePattern='.'yyyy-MM-dd
    11 log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
    12 log4j.appender.FILE.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss} %C{1}@(%F:%L):%m%n

      注意,要命的一点来了,第一行的CONSOLE,FILE要与下面的一致,要么都是大写、要么都是小写。。。我之前犯过的一个错误。。。

     (3)创建对象,以下两种方式都可以

    1 import org.slf4j.Logger;
    2 import org.slf4j.LoggerFactory;
    3 
    4 public  Logger logger = LoggerFactory.getLogger(TestController.class);

      或者

    1 import org.apache.log4j.Logger;
    2 
    3 public static Logger logger=Logger.getLogger(TestController.class);

       附: jar包依赖

    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.7.7</version>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <version>1.7.7</version>
    </dependency>
  • 相关阅读:
    调整数组顺序使奇数位于偶数前面
    网站远程附件存储到 OSS
    平滑升级mariadb
    在Apache服务器上安装SSL证书
    复试-英语
    部署博客(docker)
    远程连接Windows
    Ultimate SLAM?利用事件相机解锁高速运动、高动态范围场景
    LRNNet:轻量级FCB& SVN实时语义分割
    3D目标检测深度学习方法中voxel-represetnation内容综述(三)
  • 原文地址:https://www.cnblogs.com/javasl/p/12356924.html
Copyright © 2020-2023  润新知