Spring中配置使用slf4j + log4j
阿新 • • 發佈:2019-01-24
https code control api 產生 eap ces jsp prop
本人也是查看別人博客獲得的方法,詳細講解請參照
https://www.cnblogs.com/yuxiaole/p/9297266.html
下面進入正題:
1.在pom.xml中註入相關的依賴
<!-- slf4j + log4j 日誌 --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.25</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.25</version> </dependency>
註意不要忘了引slf4j的API
2.加入log4j的配置文件
在src/main/resources目錄下新建log4j.properties配置文件
文件內容:
# 配置根Logger
log4j.rootLogger=info, ServerDailyRollingFile, stdout
# 有關日誌輸出位置的配置命名
# ServerDailyRollingFile代表每天產生一個日誌文件
log4j.appender.ServerDailyRollingFile=org.apache.log4j.DailyRollingFileAppender
# 設置時間格式
log4j.appender.ServerDailyRollingFile.DatePattern=‘.‘yyyy-MM-dd
# 日誌文件生成路徑
log4j.appender.ServerDailyRollingFile.File=logs/notify-subscription.log
# 日誌格式
# PatternLayout可以靈活指定布局模式
log4j.appender.ServerDailyRollingFile.layout=org.apache.log4j.PatternLayout
log4j.appender.ServerDailyRollingFile.layout.ConversionPattern=%d - %m%n
# 將消息增加到指定文件中,false指消息將覆蓋指定文件的內容
log4j.appender.ServerDailyRollingFile.Append=true
# 配置輸出到控制臺
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss} %p [%c] %m%n
3.使用日誌工廠實例化一個日誌對象,通過調用日至對象的相關方法打印日誌
private static final Logger log = LoggerFactory.getLogger(StudentController.class);
// 處理JSP視圖查詢處理 @RequestMapping(value = "/read", method = RequestMethod.GET) public String readStudentByView( @RequestParam("studentId") String studentId, Model model) {
// 將要查詢的學生id寫入日誌 log.info("reading handler: studentId =" + studentId); model.addAttribute(studentService.readById(studentId)); return "student"; }
啟動服務後,向服務器發送GET請求後控制臺結果:
Spring中配置使用slf4j + log4j