MyBatis快速入門(15)配置日志打印

Mybatis 的內(nèi)置日志工廠提供日志功能野崇,內(nèi)置日志工廠將日志交給以下其中一種工具作代理:

SLF4J

Apache Commons Logging

Log4j 2

Log4j

JDK logging

MyBatis 內(nèi)置日志工廠基于運(yùn)行時(shí)自省機(jī)制選擇合適的日志工具驶乾。它會(huì)使用第一個(gè)查找得到的工具(按上文列舉的順序查找)。如果一個(gè)都未找到,日志功能就會(huì)被禁用。

不少應(yīng)用服務(wù)器(如 Tomcat 和 WebShpere)的類路徑中已經(jīng)包含 Commons Logging,所以在這種配置環(huán)境下的 MyBatis 會(huì)把它作為日志工具屡贺,記住這點(diǎn)非常重要。這將意味著锌杀,在諸如 Tomcat?的環(huán)境中甩栈,它提供了 Commons Logging 的私有實(shí)現(xiàn),你的 Log4J 配置將被忽略糕再。MyBatis 將你的 Log4J 配置忽略掉是相當(dāng)令人郁悶的(事實(shí)上量没,正是因?yàn)樵谶@種配置環(huán)境下,MyBatis 才會(huì)選擇使用 Commons Logging 而不是 Log4J)突想。如果你的應(yīng)用部署在一個(gè)類路徑已經(jīng)包含 Commons Logging 的環(huán)境中殴蹄,而你又想使用其它日志工具,你可以通過(guò)在 MyBatis 配置文件 mybatis-config.xml 里面添加一項(xiàng) setting 來(lái)選擇別的日志工具猾担。

logImpl 可選的值有:SLF4J袭灯、LOG4J、LOG4J2绑嘹、JDK_LOGGING稽荧、COMMONS_LOGGING、STDOUT_LOGGING工腋、NO_LOGGING姨丈,或者是實(shí)現(xiàn)了接口?org.apache.ibatis.logging.Log?的畅卓,且構(gòu)造方法是以字符串為參數(shù)的類的完全限定名。

你也可以調(diào)用如下任一方法來(lái)使用日志工具:

如果你決定要調(diào)用以上某個(gè)方法构挤,請(qǐng)?jiān)谡{(diào)用其它 MyBatis 方法之前調(diào)用它髓介。另外惕鼓,僅當(dāng)運(yùn)行時(shí)類路徑中存在該日志工具時(shí)筋现,調(diào)用與該日志工具對(duì)應(yīng)的方法才會(huì)生效,否則 MyBatis 一概忽略箱歧。如你環(huán)境中并不存在 Log4J矾飞,你卻調(diào)用了相應(yīng)的方法,MyBatis 就會(huì)忽略這一調(diào)用呀邢,轉(zhuǎn)而以默認(rèn)的查找順序查找日志工具洒沦。







配置log4j

首先引入依賴:

然后在resource目錄下添加log4j.properties文件,配置:

配置的文件是自定義插件打印SQL和執(zhí)行時(shí)間的類价淌。下面在類中添加log4j的打印工具:

打印日志:

禁用掉緩存申眼,然后看到效果:

修改日志配置類:

log4j.logger.mybatis.UserMapper=TRACE

或者只針對(duì)某些SQL語(yǔ)句打印日志:

log4j.logger.mybatis.UserMapper.selectById=TRACE

可以看到執(zhí)行效果:







配置slf4j

SLF4J代表Simple Logging Facade for Java。它提供了Java中所有日志框架的簡(jiǎn)單抽象蝉衣。因此括尸,它使用戶能夠使用單個(gè)依賴項(xiàng)處理任何日志框架,例如:Log4j病毡,Logback和JUL(java.util.logging)濒翻。可以在運(yùn)行時(shí)/部署時(shí)遷移到所需的日志記錄框架啦膜。

也就是說(shuō)slf4j就是對(duì)所有日志框架的一個(gè)接口抽象有送,我們具體打印日志還是需要引入具體的依賴,如果使用log4j僧家,就加入依賴:

這里不使用log4j雀摘,使用slf4j+logback進(jìn)行日志打印,加入依賴:

修改配置文件:

<setting name="logImpl" value="SLF4J"/>

然后就可以看到經(jīng)典的slf4j的日志:

在代碼中打印日志也很簡(jiǎn)單八拱,引入日志類即可:

private static final Loggerlog = LoggerFactory.getLogger(MyBatisDemo.class);

logback的配置文件可以在resource下面新建一個(gè)logback.xml文件届宠,在里面配置日志的具體輸出。logback的配置這里不是重點(diǎn)乘粒。



代碼地址:https://gitee.com/blueses/mybatis-demo? 07

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末豌注,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子灯萍,更是在濱河造成了極大的恐慌轧铁,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,183評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件旦棉,死亡現(xiàn)場(chǎng)離奇詭異齿风,居然都是意外死亡药薯,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門救斑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)童本,“玉大人,你說(shuō)我怎么就攤上這事脸候∏钣椋” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,766評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵运沦,是天一觀的道長(zhǎng)泵额。 經(jīng)常有香客問(wèn)我,道長(zhǎng)携添,這世上最難降的妖魔是什么嫁盲? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,854評(píng)論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮烈掠,結(jié)果婚禮上羞秤,老公的妹妹穿的比我還像新娘。我一直安慰自己左敌,他們只是感情好瘾蛋,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,871評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著母谎,像睡著了一般瘦黑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上奇唤,一...
    開(kāi)封第一講書(shū)人閱讀 52,457評(píng)論 1 311
  • 那天幸斥,我揣著相機(jī)與錄音,去河邊找鬼咬扇。 笑死甲葬,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的懈贺。 我是一名探鬼主播经窖,決...
    沈念sama閱讀 40,999評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼梭灿!你這毒婦竟也來(lái)了画侣?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,914評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤堡妒,失蹤者是張志新(化名)和其女友劉穎配乱,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,465評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡搬泥,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,543評(píng)論 3 342
  • 正文 我和宋清朗相戀三年桑寨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片忿檩。...
    茶點(diǎn)故事閱讀 40,675評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡尉尾,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出燥透,到底是詐尸還是另有隱情沙咏,我是刑警寧澤,帶...
    沈念sama閱讀 36,354評(píng)論 5 351
  • 正文 年R本政府宣布兽掰,位于F島的核電站芭碍,受9級(jí)特大地震影響徒役,放射性物質(zhì)發(fā)生泄漏孽尽。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,029評(píng)論 3 335
  • 文/蒙蒙 一忧勿、第九天 我趴在偏房一處隱蔽的房頂上張望杉女。 院中可真熱鬧,春花似錦鸳吸、人聲如沸熏挎。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,514評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)坎拐。三九已至,卻和暖如春养匈,著一層夾襖步出監(jiān)牢的瞬間哼勇,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,616評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工呕乎, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留积担,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,091評(píng)論 3 378
  • 正文 我出身青樓猬仁,卻偏偏與公主長(zhǎng)得像帝璧,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子湿刽,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,685評(píng)論 2 360

推薦閱讀更多精彩內(nèi)容