1. 加入log4j和slf4j的jar包
2. web.xml:
1 <context-param> 2 <!--log4j配置地址 --> 3 <param-name>log4jConfigLocation</param-name> 4 <!-- <param-value>/WEB-INF/classes/log4j.properties</param-value> --> 5 <param-value>classpath:log4j.properties</param-value> 6 </context-param> 7 <context-param> 8 <!-- log4j 配置掃描刷新間隔 可以不用 --> 9 <param-name>log4jRefreshInterval</param-name> 10 <param-value>10000</param-value> 11 </context-param> 12 <!-- spring里的log4j配置監聽器 --> 13 <listener> 14 <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> 15 </listener>
3. src/log4j.properties:
1 import org.slf4j.Logger; 2 import org.slf4j.LoggerFactory; 3 4 import com.stone.action.DefaultAction; 5 6 public class LogUtil { 7 //使用slf4j創建日志對象,好處時,以后更換為其它日志工具時,只要修改配置文件,不用修改代碼 8 private static Logger logger = LoggerFactory.getLogger(LogUtil.class); 9 //使用log4j創建日志對象 10 // private org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(getClass()); 11 12 public static void error(String message) { 13 logger.error(message); 14 } 15 public static void debug(String message) { 16 logger.debug(message); 17 } 18 public static void info(String message) { 19 logger.info(message); 20 // org.apache.log4j.Logger.getLogger(LogUtil.class).info(message); 21 } 22 }
配置info級輸出到控制台,debug和error 都輸出到對應文件中。
4. 使用log對象
1 import org.slf4j.Logger; 2 import org.slf4j.LoggerFactory; 3 4 import com.stone.action.DefaultAction; 5 6 public class LogUtil { 7 //使用slf4j創建日志對象,好處時,以后更換為其它日志工具時,只要修改配置文件,不用修改代碼 8 private static Logger logger = LoggerFactory.getLogger(LogUtil.class); 9 //使用log4j創建日志對象 10 // private org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(getClass()); 11 12 public static void error(String message) { 13 logger.error(message); 14 } 15 public static void debug(String message) { 16 logger.debug(message); 17 } 18 public static void info(String message) { 19 logger.info(message); 20 // org.apache.log4j.Logger.getLogger(LogUtil.class).info(message); 21 } 22 }