在項目中快速部署SLF4J+LOGBACK
想了解SLF4J,LOGBACK是什么?可以访问:http://www.slf4j.org/ http://logback.qos.ch/
本文大部分参考了Cody Burleson《How to setup SLF4J and LOGBack in a web app - fast》
如果你想看原汁原味的英文版,可以访问:https://wiki.base22.com/display/btg/How+to+setup+SLF4J+and+LOGBack+in+a+web+app+-+fast
我的開發環境
開發工具: springsource-tool-suite-2.9.0
JDK版本: 1.6.0_29
tomcat版本:apache-tomcat-7.0.26
本文地址: http://www.cnblogs.com/sunang/p/3433987.html 轉載請注明出處^_^
now go!
step1.引入jar包
Maven代碼:
<!-- SLF4J&LOGBACK --> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.0.13</version> </dependency>
step2.編輯LOGBack配置文件
路徑:
代碼:
<?xml version="1.0" encoding="UTF-8"?> <configuration> <!-- 輸出到控制台 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <layout class="ch.qos.logback.classic.PatternLayout"> <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n </Pattern><!-- 日誌格式 --> </layout> </appender> <!-- 輸出到文件 --> <appender name="FILE" class="ch.qos.logback.core.FileAppender"> <file>MyLog.log</file><!-- 指定日誌文件路徑,本地環境下,根目錄為IDE安裝目錄 --> <layout class="ch.qos.logback.classic.PatternLayout"> <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n </Pattern><!-- 日誌格式 --> </layout> </appender> <logger name="www.asuan" level="TRACE" /><!-- 包路徑根據你的開發環境而定 --> <!-- 单个logger可绑定多个appender,一个appender可被多个logger所引用 --> <root level="debug"> <!-- 引用之前定義的appender --> <appender-ref ref="STDOUT" /> <appender-ref ref="FILE" /> </root> </configuration>
step3.編輯controller方法,視圖頁面
package www.asuan.com.controller; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class TestController { @RequestMapping("/index") public String index(Model model) { final Logger LOG = LoggerFactory.getLogger(this.getClass()); LOG.trace("Hello World!"); LOG.debug("How are you today?"); LOG.info("I am fine."); LOG.warn("I love programming."); LOG.error("I am programming."); return "index.ftl"; } }
頁面代碼:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> 運行成功,請查看Console輸出。 </body> </html>
step4.運行與調試
部署并運行項目,瀏覽器訪問:http://localhost:8080/你的工程名/index.htm
運行結果
頁面:
console輸出結果:
在IDE路徑下(或者是你設定的其他路徑)生成了日誌文件:
日誌文件記錄了controller方法所記錄的日誌:
complete!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端