纯log4j日志系统升级为log4j+slf4j

一、web工程纯log4j日志系统升级为log4j+slf4j

1.添加相关jar包:

  1. log4j-xxx.jar
  2. slf4j-api-xxx.jar
  3. slf4j-log4j-xxx.jar
    (jar包版本自行选择,jar包下载路径:链接: https://repo1.maven.org/maven2/org/slf4j/.)
    1

2、获取方式改变

将原有的log4j获取log的方法改为slf4j获取log的方法,方便以后更改log实现:

  1. log4j获取log方式:
import org.apache.log4j.Logger;
private Logger logger = Logger.getLogger(InitializeServlet.class);

2、slf4j获取log方式:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
private Logger logger = LoggerFactory.getLogger(InitializeServlet.class);

3、新旧日志对比

对比旧日志和新日志,检查输出是否一致,保证不出错

二、slf4+log4j联合使用的好处

slf4j只是定义了一组日志接口,但并未提供任何实现,既然这样,为什么要用slf4j呢?log4j不是已经满足要求了吗?
是的,log4j满足了要求,但是,日志框架并不只有log4j一个,你喜欢用log4j,有的人可能更喜欢logback,有的人甚至用jdk自带的日志框架,这种情况下,如果你要依赖别人的jar,整个系统就用了两个日志框架,如果你依赖10个jar,每个jar用的日志框架都不同,岂不是一个工程用了10个日志框架,那就乱了!
  如果你的代码使用slf4j的接口,具体日志实现框架你喜欢用log4j,其他人的代码也用slf4j的接口,具体实现未知,那你依赖其他人jar包时,整个工程就只会用到log4j日志框架,这是一种典型的门面模式应用,与jvm思想相同,我们面向slf4j写日志代码,slf4j处理具体日志实现框架之间的差异,正如我们面向jvm写java代码,jvm处理操作系统之间的差异,结果就是,一处编写,到处运行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值