java log4j2_老生常谈Log4j和Log4j2的区别(推荐)
相信很多程序猿朋友对log4j都很熟悉,log4j可以说是陪伴了绝大多数的朋友开启的编程。我不知道log4j之前是用什么,至少在我的生涯中,是log4j带我开启的日志时代。
log4j是Apache的一个开源项目,我们不去考究它的起源时间,但是据我了解,log4j 1已经不再更新了。
回顾log4j,曾给我们留下了多少的回忆,我记得早些年,那时候mybatis还是叫ibatis的时候,我为了配置ibatis控制台打印日志,纠结了多少个夜晚,最后配置出来时的那种喜悦感。废话不多说,下面我就以列举的方式来浅谈log4j和log4j 2的不同之处。
1、配置文件类型
log4j是通过一个.properties的文件作为主配置文件的,而现在的log4j 2则已经弃用了这种方式,采用的是.xml,.json或者.jsn这种方式来做,可能这也是技术发展的一个必然性,毕竟properties文件的可阅读性真的是有点差。
2、核心JAR包
log4j只需要引入一个jar包即可,
log4j
log4j
1.2.17
•1
•2
•3
•4
•5
•1
•2
•3
•4
•5
而log4j 2则是需要2个核心
org.apache.logging.log4j
log4j-core
2.5
org.apache.logging.log4j
log4j-api
2.5
•1
•2
•3
•4
•5
•6
•7
•8
•9
•10
•1
•2
•3
•4
•5
•6
•7
•8
•9
•10
大家发现没,log4j和log4j 2的包路径是不同的,Apache为了区分,包路径都更新了,这样大家甚至可以在一个项目中使用2个版本的日志输出哦!(不过我想你们没有那么调皮吧,嘿嘿)
3、文件渲染
log4j想要生效,我们需要在web.xml中进行配置,
org.springframework.web.util.Log4jConfigListener
log4jConfigLocation
classpath:config/log4j.properties
log4jRefreshInterval
60000
•1
•2
•3
•4
•5
•6
•7
•8
•9
•10
•1
•2
•3
•4
•5
•6
•7
•8
•9
•10
这段配置目的在于告诉工程去哪加载log4j的配置文件和定义一个扫描器,这样可以随心所欲的放置log4j配置文件。
log4j2就比较简单,以maven工程为例,我们只需要把log4j2.xml放到工程resource目录下就行了。大家记住一个细节点,是log4j2.xml,而不是log4j.xml,xml名字少个2都不行!!
•喜欢做学问的小伙伴,有兴趣可以去研究下,照我估计应该是在log4j2的包里面配置死了,而且大家可以尝试下怎么自定义log4j2.xml的位置。
4、Log调用
log4j和log4j2调用都是很简单的。
log4j:
import org.apache.log4j.Logger;
private final Logger LOGGER = Logger.getLogger(Test.class.getName());
•1
•2
•1
•2
log4j2:
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
private static Logger logger = LogManager.getLogger(Test.class.getName());
•1
•2
•3
•4
•1
•2
•3
•4
5、配置文件方式
最关键的最大的不同,那就是配置文件的区别了,大家具体使用的时候再根据你的情况进行配置就行了。
log4j2 例子如下:
filePattern="logs/$${date:yyyy-MM}/web-%d{MM-dd-yyyy}-%i.log.gz">
以上这篇老生常谈Log4j和Log4j2的区别(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
java log4j2_老生常谈Log4j和Log4j2的区别(推荐)相关推荐
- Java Log4j和Log4j2的区别
Java Log4j和Log4j2的区别 一.核心JAR包 log4j核心包:log4j:log4j:[version] 而log4j2的核心包有2个: org.apache.logging.log4 ...
- Log4j和Log4j2的区别
log4j是Apache的一个开源项目,log4j2和log4j是一个作者,只不过log4j2是重新架构的一款日志组件,他抛弃了之前log4j的不足,以及吸取了优秀的logback的设计重新推出的一款 ...
- java log4j logback jcl_知识总结-Java日志框架Log4j、Log4j2、logback、slf4j、简介
功能简介 上一篇介绍了为什么打印日志.什么时候打印日志以及怎么打印日志.本篇介绍下在项目开发中常见的日志组件以及关系. 先看一张图 接口:将所有日志实现适配到了一起,用统一的接口调用. 实现:目前主流 ...
- Slf4j与log4j及log4j2的关系及使用方法
Slf4j与log4j及log4j2的关系及使用方法 slf4j slf4j仅仅是一个为Java程序提供日志输出的统一接口,并不是一个具体的日志实现方案,就比如JDBC一样,只是一种规则而已,所以单独 ...
- java解析xml element_java解析XML Node与Element的区别(推荐)
对Element和Node有困惑是因为对xml整个结构不了解,以下作为一个简要概述: 以下图为w3c.org网站的xml文档树图: 从上图可以看出,一个xml文档由元素节点,属性节点,文本节点构成,其 ...
- Log4j(四)——Log4j1与Log4j2的区别
前言 几乎每个大型应用程序都包含自己的日志或跟踪API.为了符合这一规则,欧盟SEMPRER项目决定编写自己的跟踪API.这是在1996年初.经过无数次的增强.几个版本和大量的工作之后,API演变成了 ...
- java常用日志框架日志门面及实现 SLF4J 、Jboss-logging 、JCL、Log4j、Logback、Log4j2、JUL,springboot集成 log4j、log4j2
java常用日志框架日志门面SLF4J .Jboss-logging .JCL.Log4j及实现 Logback.Log4j2.JUL,springboot集成 log4j.log4j2 .logba ...
- Java日志体系日志门面(Slf4j)日志实现(Log4j、Log4j2)详解
1.背景 近日发生两次因日志使用不当导致的线上问题: 1.应用明明配置了info日志级别,却打印大量的debug日志,导致磁盘IO较高,很快就报磁盘空间不足告警 2.应用服务启动后报StackOver ...
- 一文讲尽门面日志slf4j和log4j、log4j2、logback依赖jar引用关系
前言 之前都是使用SparkStreaming开发,最近打算学习一下Flink,就从官网下载了Flink 1.11,打算搞一个客户端,将程序提交在yarn上.因为Flink从1.7之后就不再提供Had ...
最新文章
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十八) 完美精灵之八面玲珑(WPF Only)②...
- 【ok】李宏毅机器学习12: 对称矩阵
- Python函数中apply、map、applymap的区别
- indigo egit
- iOS自动打包并发布脚本
- 【数据结构与算法】之有关“跳跃游戏”的求解思路与示例算法
- systemd kernel
- Linux 的 复制命令 【 cp 】 (copy)及其 (常用参数 -fp)
- Matlab Tricks(十九)—— 序列左右移的实现
- web前端开发技术期末考试_(完整word版)web前端开发技术试卷三
- OSChina 周六乱弹 —— 召唤养我的富婆
- Android 开启热点 适配8.0以上
- 不属于计算机完成科学特点的是,2019年网络教育统考《计算机应用基础》试卷版练习题2...
- Maven构建docker镜像并打包推送到远程私有仓库
- indexedDB存储
- 数字通信基本原理与设备
- uni-app H5 上传图片
- Java 课程设计--数据库管理系统
- 未来两周目标计划---C++ and Disassembly(不积跬步无以至千里,不积小流无以成江海)...
- 好几张图片合成一个PDF,不能错过的小技巧!
热门文章
- 详细介绍Deeper Text Understanding for IR with Contextual Neural Language Modeling
- 围棋协会盛赞柯洁展强者风范 完胜韩国新领军人
- 苹果A6处理器最新测试:1.3GHz
- 兼容主流浏览器的【表情插入】源码(转)
- watch中的immediate、handler和deep属性
- readdir不保证读取的文件顺序
- Linux su :user xxx does not exits
- ZZ:天下无贼经典台词IT版
- 周景世荣慢生活馆+重组自己的7个方法思维导图模板
- android wifi tcpip,Android无线调试:tcpip无线连接 | WiFi apk无线连接