1)、项目结构:
2)、OnlyLog4jTest内容
package com.log4j.wzq; import org.apache.log4j.Logger; /** * @Author:wangzhenqing * @Date:2015年03月16日15:32:18 * @Description:只有log4j,测试类 */ public class OnlyLog4jTest { private Logger logger = Logger.getLogger(OnlyLog4jTest.class); public static void main(String[] args) { OnlyLog4jTest onlyLog4jTest = new OnlyLog4jTest(); onlyLog4jTest.printInfo(); } public void printInfo(){ logger.debug("debugInfo"); logger.info("info"); logger.error("errorInfo"); logger.fatal("fatalInfo"); logger.warn("warnInfo"); } }3)、直接运行出错。
4)、修改,增加log4j.properties
log4j.properties增加地址为:src/main/resources,需要修改代码,在文件中加载log4j.properties
PropertyConfigurator.configure(PropertyConfigurator.class.getResourceAsStream("/log4j.properties"));l og4j.properties内容,输出到控制台和文件
log4j.rootLogger = Debug, stdout, file # 定义stdout的输出类型 log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout = org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%p] %m%n # 定义file输出类型 log4j.appender.file = org.apache.log4j.DailyRollingFileAppender log4j.appender.file.file = log.txt log4j.appender.file.layout = org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%p] %m%n5)、至此,成功输出内容到控制台
2015-03-17 15:39:57 [DEBUG] debugInfo 2015-03-17 15:39:57 [INFO] info 2015-03-17 15:39:57 [ERROR] errorInfo 2015-03-17 15:39:57 [FATAL] fatalInfo 2015-03-17 15:39:57 [WARN] warnInfo
1)、OnlyCommonsLogTest内容
package com.log4j.wzq; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; /** * @Author:wangzhenqing * @Date:2015年03月17日16:48:06 * @Description:单独使用commons-logging */ public class OnlyCommonsLogTest { public static void main(String[] args) { OnlyCommonsLogTest onlyCommonsLogTest = new OnlyCommonsLogTest(); onlyCommonsLogTest.printInfo(); } public void printInfo() { Log log = LogFactory.getLog(OnlyCommonsLogTest.class); log.debug("debugInfo"); log.info("info"); log.error("errorInfo"); log.fatal("fatalInfo"); log.warn("warnInfo"); System.out.println(log.getClass()); } }
2)、不加载任何配置文件,输出
3)、在src/main/resources增加commons-logging.properties,指定Log实现,文件内容为:
org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog
输出使用的日志即为:class org.apache.commons.logging.impl.SimpleLog
1)、在路径下加载commons-logging以及log4j包。
2)、直接运行class,结果