【日志】Java日志工具(common-logging/log4j/slf4j)在常用框架(Struts2/Spring/Hibernate/Mybatis)中的灵活运用

时间:2022-12-17 09:15:18

Java日志工具(common-logging/log4j/slf4j)在常用框架(Struts2/Spring/Hibernate/Mybatis)中的灵活运用


Spring :Commons-Logging

Struts :有自身默认的日志工具,间接的优先支持 Commons-Logging
Hibernate :直接的使用 Slf4J
iBatis/MyBatis :有自身默认的日志工具,间接的优先使用 Slf4J


1.加入slf4j.jar  +  slf4j-log4j.jar  +  log4j.jar     可让用slf4j(1.6版本)日志工具的框架(Hibernate、MyBatis)将日志托管给log4j管理;


2.加入slf4j.jar  +  slf4j-jcl.jar  +  commons-logging.jar 可让用slf4j日志工具的框架(Hibernate、MyBatis)将日志托管给common-logging管理;


3.加入slf4j.jar  +  slf4j-jcl.jar +  commons-logging.jar + log4j.jar  可让用slf4j日志工具的框架(Hibernate、MyBatis)将日志托管给log4j管理,和1的效果一样,

 (需要在commons-logging.properties中加入org.apache.commons.logging.LogFactory=org.apache.commons.logging.impl.Log4jFactory);


4.加入commons-logging.jar  +  jcl-over-slf4j.jar +  slf4j.jar  可让默认用 commons-logging日志工具的框架(Spring、Struts2)将日志托管给slf4j管理;


5.加入commons-logging.jar  +  log4j.jar  可让默认用 commons-logging日志工具的框架(Spring、Struts2)将日志托管给log4j管理;

 (需要在commons-logging.properties中加入org.apache.commons.logging.LogFactory=org.apache.commons.logging.impl.Log4jFactory);


6.加入commons-logging.jar  +  log4j.jar  +  log4j-over-slf4j.jar  +  slf4j-jcl.jar 可让默认用 commons-logging日志工具的框架(Spring、Struts2)将日志托管给slf4j管理;

 (需要在commons-logging.properties中加入org.apache.commons.logging.LogFactory=org.apache.commons.logging.impl.Log4jFactory);


7.加入commons-logging.jar可让使用自身日志工具的框架(Struts2)将日志托管给commons-logging管理;


8.加入slf4j.jar 可让使用自身日志工具的框架(iBatis/MyBatis)将日志托管给slf4j.jar管理;


注意:上面包的排列顺序代表着日志托管顺序。写这些主要是因为在一个java项目中往往要用到多个java框架,而不同的框架所用日志机制各有不同,具体使用什么日志工具可根据情况灵活使用。