1. 程式人生 > >【ssm框架】配置log4j日誌

【ssm框架】配置log4j日誌

日誌是專案管理必不可少的一個內容。他可以記錄使用者的登入情況,進行了哪些操作,幫助我們更好地管理專案。通過檢視日誌,我們也可以更快地找到bug並修復。在ssm框架中配置log4j環境的步驟如下:

新增maven依賴

<!-- 日誌處理 -->
<dependency>
   <groupId>commons-logging</groupId>
   <artifactId>commons-logging</artifactId>
</dependency>
<dependency>
   <groupId>org.slf4j</groupId>
   <artifactId>slf4j-log4j12</artifactId>
</dependency>


寫好log4j.properties配置檔案(配置可參考點選開啟連結

log4j.rootLogger = debug,stdout,fout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

log4j.appender.stdout.Target = System.out
log4j.appender.stdout.Threshold = debug
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d [%-5p]%l %m%n

log4j.appender.fout = org.apache.log4j.DailyRollingFileAppender
log4j.appender.fout.File = log/log.log
 
log4j.appender.fout.DatePattern=yyyy-MM-dd'.log'
log4j.appender.fout.Append = true
log4j.appender.fout.Threshold = DEBUG
log4j.appender.fout.layout = org.apache.log4j.PatternLayout
log4j.appender.fout.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}[%-5p]%l %m%n


在web.xml中配置監聽器並引入配置檔案

<!--log4j配置檔案開始-->
<context-param>
   <param-name>log4jConfigLocation</param-name>
   <param-value>classpath:config/log4j.properties</param-value>
</context-param>
<listener>
   <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>

之後我們便可以開始使用日誌。通常我們將日誌定義在BaseController,BaseService中,由所有的子類去使用。

protected final Logger log =LoggerFactory.getLogger(this.getClass());


子類只要呼叫log.info(“XXXX”)即可將需要寫進日誌的內容寫入日誌。

public boolean checkAccount(User user)throws Exception{
    log.info("===檢查使用者賬號[" + user.getAccount() + "]是否已存在===");
    User temp =userMapper.getByAccount(user.getAccount());
    if(temp != null &&!temp.getId().equals(user.getId())){
        return true;
    }
    return false;
}