spring配置日誌

2021-09-07 08:08:08 字數 4498 閱讀 4949

原文:

參考:spring預設使用了commons-logging,在整合其它日誌框架,slf4j使用了編譯時繫結來代替執行時發現.它注定是更高效的(當然slf4j還可以使用佔位符繫結等功能).下文介紹spring三種常用方案記錄日誌,推薦第三種

方案一:commons-logging+log4j

1.依賴:

<

dependency

>

<

groupid

>org.springframework

groupid

>

<

artifactid

>spring-context

artifactid

>

<

version

>$

version

>

dependency

>

<

dependency

>

<

groupid

>log4j

groupid

>

<

artifactid

>log4j

artifactid

>

<

version

>1.2.17

version

>

dependency

>

log4j.rootcategory=warn, stdout  

log4j.category.org.exam=debug

log4j.category.org.springframework.beans.factory=info

根據log4j api(已經過時,應使用logger代替.而logger是category的子類,在category的所有操作都可以在logger上執行.以上的properties檔案內容應改為

log4j.rootlogger=warn, stdout  

log4j.logger.org.exam=debug

log4j.logger.org.springframework.beans.factory=info

3.**用法:

import

org.apache.log4j.logger;

public

class

userservice

}

方案二:slf4j+log4j

1.先在spring排除commons-logging.再引入4個包:橋接包jcl-over-slf4j,slf4j api包slf4j-api,繫結到log4j的包slf4j-log4j12,log4j實現包log4j12. 

<

dependency

>

<

groupid

>org.slf4j

groupid

>

<

artifactid

>jcl-over-slf4j

artifactid

>

<

version

>1.7.7

version

>

dependency

>

<

dependency

>

<

groupid

>org.slf4j

groupid

>

<

artifactid

>slf4j-log4j12

artifactid

>

<

version

>1.7.7

version

>

dependency

>

<

dependency

>

<

groupid

>org.springframework

groupid

>

<

artifactid

>spring-context

artifactid

>

<

version

>$

version

>

<

exclusions

>

<

exclusion

>

<

groupid

>commons-logging

groupid

>

<

artifactid

>commons-logging

artifactid

>

exclusion

>

exclusions

>

dependency

>

2.log4j配置同上.

3.**用法:

import

org.slf4j.logger;

import

org.slf4j.logge***ctory;

public

class

userservice 喜歡我,但是我喜歡{}","a","b");

return

true

; }

}

方案三:slf4j+logback.其中,logback是slf4j原生的實現.

1.先引入logback-classic依賴,它會將其它依賴引入,再在spring排除commons-logging.

<

dependency

>

<

groupid

>ch.qos.logback

groupid

>

<

artifactid

>logback-classic

artifactid

>

<

version

>1.1.3

version

>

dependency

>

<

dependency

>

<

groupid

>org.springframework

groupid

>

<

artifactid

>spring-webmvc

artifactid

>

<

version

>$

version

>

<

exclusions

>

<

exclusion

>

<

groupid

>commons-logging

groupid

>

<

artifactid

>commons-logging

artifactid

>

exclusion

>

exclusions

>

dependency

>

2.logback配置:查詢順序logback.groovy-->logback-test.xml-->logback.xml,詳細配置還是參考文件下面是logback.xml例子

<?

xml version="1.0" encoding="utf-8"

?>

<

configuration

>

<

name

="console"

class

>

<

encoder

>

<

pattern

>%d [%thread] %-5level %logger - %msg%n

pattern

>

encoder

>

>

<

logger

name

="org.exam"

level

="debug"

/>

<

logger

name

="org.springframework.beans.factory"

level

="info"

/>

<

root

level

="warn"

>

<

ref="console"

/>

root

>

configuration

>

spring日誌系統相關配置總結

檔案輸出配置 logging.file.name 預設日誌檔名稱為spring.log logging.file.path 預設為當前目錄 當日誌檔案達到10m時,logging.file.max size 限定日誌檔案最大位元組數 logging.file.max history 歷史日誌檔案最大...

Spring的那些配置 事務和日誌

spring整合ibatis典型的配置檔案 classpath sqlmap config.xml 1.spring的事務配置 spring使用 和 用來配置事務,具體如何配置你可以參考spring文件 關於這裡的expression execution com.ksfzhaohui.service...

Spring錯誤日誌

今天在幫朋友寫的乙個程式時 加了spring框架 在xml檔案中配置了資料來源 結果測試時出現如下的問題 error registering bean with name mydatasource defined in resource loaded through inputstream 在網上找...