MyBatis进阶一:slf4j日志门面和logback日志组件;(在MyBatis中的使用logback)(本篇博客仅仅是在控制台输出日志信息,不涉及把日志信息存储到日志文件)

本篇博客介绍一个,目前在mybatis,spring等框架中,广泛使用的日志组件:logback;

目录

日志简介 

首先,在pom.xml中增加logback的依赖:

然后,上面在pom.xml中引入logback后,运行程序,观察效果:

然后,可以在logback.xml中自定义日志的格式:

最后的一点说明:

附1:日志级别

附2:logback官网

附3:让日志输出到一个日志文件中,而不是输出到Console控制台中(待解决)


日志简介 

日志就是系统运行的历史记录。

日志是任何一个系统都必不可少的东西,mybatis自然也离不开日志;在系统运行过程中,mybatis在后台默默地产生着各种日志。

说明:

(1)日志门面:是日志实现的抽象层。为java提供了统一的日志调用接口;【SLF4J】和【Apache Commons-Logging】是两个不同的厂商,有的项目使用【SLF4J】作为日志门面,有的项目使用【Apache Commons-Logging】作为日志门面。。。所以,当接触一个新项目的时候,需要先确认项目使用的日志门面是哪个?因为,这两个日志门面所提供的接口是完全不同的。

(2)日志实现:具体的日志功能的实现。java中有各种各种各样的组织开发了不同的产品,对于日志也是如此。【Apache开发的log4j】,【logback】,【java自带的java.util.logging(jul)】等,这些都是java中常用的日志组件,其提供了日志的打印、输出和管理。。。。。

(3)正是因为,日志基于门面和实现进行了分开,所以给程序的迁移提供了极大的便利。如,已有的一个java项目底层使用SLF4J作为日志门面,然后使用了log4j作为日志实现,,,,但是,随着技术的不断演进,后来发现logback从性能到设计上都比log4j要好,目前要做的就是把log4j的jar包从系统中剔除,假如logback的jar包就可以了,,,,,,作为程序的访问的门面不用做任何的调整,SLF4J自动的会完成从log4j到logback的迁移工作。(但是,我记得以前做项目的时候,很多java来中import了log4j,,,这些深入程序代码中的log4j的东西如何替换??????

(4)因为日志实现,可能会有一些代码的优化和改动,避免影响用户在项目中的使用,使用日志门面这些统一的接口,假设在实现层代码做了更改,用户在项目中使用日志而调用的接口等等都是不会受影响的。在实际使用中,是选择一个抽象层的日志门面搭配一个底层日志实现来使用的。

(5)工作中,目前多使用logback;log4j是早期java项目中常使用的日志组件;(其实log4j和logback是同一个人开发的,log4j的作者因为一些合作上的原因和log4j本身陈旧的原因,他就另起炉灶开发了logback。。。log4j和logback底层的设计理念非常形式;;;从使用的角度,也是非常像的。)logback的维护性和执行效率都比log4j好。 logback应用十分广泛,mybatis底层就是通过SLF4J支持logback的


首先,在pom.xml中增加logback的依赖:

</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值