springmvc实现日志的监听提供调试等 log4j
1.pom文件 添加依赖
<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.21</version> </dependency>
2.添加web.xml 配置
<!--配置log4j--> <context-param> <param-name>log4jConfigLocation</param-name> <param-value>classpath:/log4j/log4j.xml</param-value> </context-param> <!-- 配置log4j.xml变量,如果需要动态的就使用下面方式,使用方法${name} --> <context-param> <param-name>controller</param-name> <param-value>controller-log</param-value> </context-param> <context-param> <param-name>loggingLevel</param-name> <param-value>info</param-value> </context-param> <!-- 加载log4j配置文件 --> <listener> <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> </listener>
3.目录下的 resources/log4j/log4j.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'> <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender"> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss:SSS} %l %m%n"/> </layout> <!--限制输出级别 --> <filter class="org.apache.log4j.varia.LevelRangeFilter"> <param name="LevelMax" value="ERROR"/> <param name="LevelMin" value="DEBUG"/> </filter> </appender> <root> <priority value="debug"/> <appender-ref ref="CONSOLE"/> </root> <!--保存到文件--> <!--<appender name="FILE" class="org.apache.log4j.FileAppender">--> <!--<param name="file" value="C://Users/xingwen/IdeaProjects/smallapi/webapp/src/main/resources/log4j/log.out"/>--> <!--<param name="immediateFlush" value="true"/>--> <!--<param name="threshold" value="debug"/>--> <!--<param name="append" value="false"/>--> <!--<layout class="org.apache.log4j.PatternLayout">--> <!--<param name="conversionPattern" value="%m%n"/>--> <!--</layout>--> <!--</appender>--> <!--<logger name="log4j.rootLogger" additivity="false">--> <!--<level value="DEBUG"/>--> <!--<appender-ref ref="FILE"/>--> <!--</logger>--> </log4j:configuration>
4.控制器调用
private static Logger logger = LoggerFactory.getLogger(xxController.class);
logger.debug("调试语句");