日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

requirednew基于xml配置日志不回滚_Mybatis 系列 4:引入日志框架

發布時間:2024/2/28 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 requirednew基于xml配置日志不回滚_Mybatis 系列 4:引入日志框架 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

為什么要用日志?

我們以前要看一個信息,一般使用的是 System.out.println 來打印的,額,這種方式比較 low,需要在代碼里各種寫 System.out.println,是會受到鄙視的。。。

使用日志框架的好處:

0、比起 System.out.println,日志框架可以把日志的輸出和代碼分離;

1、日志框架可以方便的定義日志的輸出環境,控制臺,文件,數據庫,相比System.out.println 只能輸出到控制臺要好很多;

2、日志框架可以方便的定義日志的輸出格式和輸出級別,也就是說我們想看哪個級別的日志就開啟哪個級別的日志;

常見的日志框架:

0、JDK logging:JDK 1.4 版本以后開始提供的一個自帶的日志庫實現,比較弱,功能簡單,不支持占位符顯示,拓展性差,一般不用;

1、Apache 的 Commons Logging:嚴格上說,Commons Logging 是日志的一種規范,一種接口,被 Apache 給定義了,日志的規范本身不提供實現,可以通過動態查找的機制去找出真正的日志框架實現庫;

2、Log4j:Apache 下功能強大的日志庫實現,可以把日志輸出到文件,控制臺,還可以允許自定義日志格式和日志等級,幫助開發者全方位的掌控日志信息;

3、Log4j 2:是 Log4j 的升級,但是二者之間沒有本質關系,基本上把 Log4j 版本的核心全部重構,而且基于 Log4j 做了很多的優化和升級。

4、SLF4J:本質也是日志的規范,出現的比較晚,很多之前的日志技術就沒有來遵循它,所有得自己提供其他日志技術框架的橋梁,也就是說使用時得拷貝整合包(比如使用 Log4j 的時候,要遵循 SLF4j 的規范,就需要如圖中的 Slf4j-log4j12-xx.jar 包)。

這里有個小故事:

當年 Apache 說服 Log4j 以及其他的日志框架按照 Commons-Logging 的標準來編寫,但是由于 Commons-Logging 的加載有點問題,實現起來不友好。因此 Log4j 的作者就創作了 SLF4j,也因此與 Commons-Logging 二分天下。

5、Logback:由 Log4j 創始人設計的另一個開源日志組件,也是作為 Log4j 的替代者出現的,速度比 Log4j 高,而且官方是建議和 SLF4j 一起使用。

Logback、SLF4j、Log4j 都是出自同一個人,所有默認對 SLF4j 無縫整合。

日志級別:

從高到底分別是:

ERROR > WARN > INFO > DEBUG > TRACE

如果設置級別為 INFO,則優先級高于等于 INFO 級別(如:INFO、WARN、ERROR)的日志信息將可以被輸出,小于該級別的如 DEBUG 和 TRACE 將不被輸出。

總結:日志級別越低,輸出的日志越詳細。

下面,我們參照 Mybatis 官方文檔,進行日志框架(Log4j)配置:

0、在 resources 根目錄下創建 log4j.properties 文件:

可以看到日志文件的組成有 3 部分:

分別是 root、logger、appender。

root:設置默認的日志輸出級別和風格。

logger:設置自定義日志級別和風格。

appender:可以把日志輸出到控制臺或文件中去。

語法說明:

root 根配置(全局配置)語法:log4j.rootLogger=[level], appenderName, appenderName, …

把指定級別以上的日志信息輸出到指定的一個或者多個位置,level:ERROR > WARN > INFO > DEBUG > TRACE

logger 自定義配置,針對不同包、類、方法的日志個性化配置語法: log4j.logger.+包、類、方法名=[level]

appender 日志輸出目的地及格式配置語法:log4j.appender.+

1、通過 mybatis-config.xml 全局配置文件進行日志框架配置:

通過查詢 Mybatis 官方文檔的 XML 配置 -> settings(設置)知道:

設置名為 logImpl,描述為:指定 MyBatis 所用日志的具體實現,未指定時將自動查找,有效值為:SLF4J | LOG4J | LOG4J2 | JDK_LOGGING | COMMONS_LOGGING | STDOUT_LOGGING | NO_LOGGING。則可配置日志框架。

2、拷貝相應 jar 包,或引入依賴:

配置好后,運行系列上一篇文章中寫好的測試用例,可以看到控制臺已經可以打印出相應的日志信息:

可以看到控制臺輸出了 DEBUG 和 TRACE 級別的日志信息,因為我們自定義設置的 Mapper 映射文件對應包下的日志級別為 TRACE,所以會打印出 TRACE 級別以上的日志信息。

最后說一下,在項目中,有時候我們需要跟蹤日志,會在代碼中自定義類似如下日志:

然后就可以通過設置日志級別來查看對應的信息。

tips:查看官方文檔是學習一門新語言最有效的方法。

系列預告:Mybatis 系列 5:OGNL 表達式

總結

以上是生活随笔為你收集整理的requirednew基于xml配置日志不回滚_Mybatis 系列 4:引入日志框架的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。