SLF4J只是一個接口,可以實現程序的解藕。SLF4J可以與log4j、logback、jdk等日志系統結合,以及在這些日志系統之間切換。
使用maven導入各個日志系統的jar包。需要注意的是要寫相應的輸出格式和級別配置,比如log4j的log4j.properties,對於另外兩個不寫使用默認的也行。
<!-- 使用log4j作日志 --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.4.1</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.11</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.4.1</version> </dependency> <!-- 使用slf4j-simple作日志 --> <!-- <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>1.4.1</version> </dependency> --> <!-- 使用jdk作日志 --> <!-- <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-jdk14</artifactId> <version>1.4.1</version> </dependency> -->
目錄結構如下:
使用SLF4j和log4j來做日志輸出,注釋的是單獨使用log4j。關於log4j的使用和配置參考:http://www.cnblogs.com/sky230/p/5759831.html
package com.dragon.action; import org.slf4j.LoggerFactory; import com.opensymphony.xwork2.ActionSupport; public class LoginAction extends ActionSupport { private static final long serialVersionUID = 1L; // private Logger log = Logger.getLogger(LoginAction.class); private org.slf4j.Logger logger = LoggerFactory.getLogger(LoginAction.class); public String excute(){ System.out.println("excute"); logger.info("my name is {}", logger.getName()); // log.info("I am log4j."); return "success"; } }
日志各組件的介紹參考:http://blog.csdn.net/yycdaizi/article/details/8276265