web.xml配置解析(3)
时间:2025-04-05
时间:2025-04-05
10.
11.<context-param>
12. <param-name>log4jRefreshInterval</param-name>
13. <param-value>60000</param-value>
14.</context-param>
15.
16.<listener>
17. <listener-class>org.springframework.web.util.Log4jConfigListener
18. </listener-class>
19.</listener>
配置解释:
使用spring中的Log4jConfigListener有如如下好处:
1. 动态的改变记录级别和策略,不需要重启Web应用
2. 把log文件定在 /WEB-INF/logs/ 而不需要写绝对路径。
因为 系统把web目录的路径压入一个叫webapp.root的系统变量。这样写log文件路径时不用写绝对路径了.
log4j.appender.logfile.File=${webapp.root}/WEB-INF/logs/myfuse.log
3. 可以把log4j.properties和其他properties一起放在/WEB-INF/ ,而不是
Class-Path。
4.log4jRefreshInterval为60000,表示开一条watchdog线程每60秒扫描一下配置文件的变化. 5.<context-param>
<param-name>webAppRootKey</param-name>
<param-value>web.sample.root</param-value>
</context-param>
* 可以用System.getProperty("web.sample.root")来获取属性值。在Eclipse调试Web项目时,项目的路径是一个临时路径,不在真正的路径下,可以通过上述语句打印出属性值,来看看临时项目路径在哪里。
* Spring通过 org.springframework.web.util.WebAppRootListener
这个监听器来压入项目路径。但是如果在web.xml中已经配置了 org.springframework.web.util.Log4jConfigListener这个监听器,则不需要配置WebAppRootListener了。
* 因为Log4jConfigListener已经包含了WebAppRootListener的功能部署在同一容器中的Web项目,要配置不同的<param-value>,不能重复。
* 如果配置了log4j.appender.file.File=${web.sample.root}/WEB-INF/logs/sample.log
上一篇:建筑给排水设计及施工中常见问题