简单的介绍下Maven项目中有关org.apache.log4j.Logger的使用。
[1]首先我们需要找到 org.apache.log4j.Logger的坐标,并配置到POM.xml
<dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.14</version> <scope>provided</scope> </dependency>
[2]默认情况下,需要在src/main/java 文件夹下添加配置文件log4j.properties,具体内容可以参考下边有一个简单的例子:
log4j.rootLogger=CONSOLE,FILE,stdout
log4j.addivity.org.apache=true
### \u8F93\u51FA\u5230\u63A7\u5236\u53F0 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n
#\u5E94\u7528\u4E8E\u6587\u4EF6
log4j.appender.FILE=org.apache.log4j.FileAppender
log4j.appender.FILE.File=F:/log4j/file.log
log4j.appender.FILE.Append=false
log4j.appender.FILE.Encoding=GBK
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n
注:上述示例中将log日志信息打印到控制台和F:/log4j/file.log的文件当中。简单的属性比如Append控制是否将日志覆盖,ConversionPattern是日志输出的格式等等不在此赘述。想要深♂入了解的朋友可以继续搜索度娘的其它领♂域。the deep dark fantasy...
再注:不知为什么写着写着发现注释好像有什么不对。我好像见过这些杠优十六进制梵文,貌似可以翻译成天朝文。翻译完后我简直大惊失♂色。原来往eclipse的.properties文件中粘贴汉字的时候容易出现这种情况。
[3]最后只需要写程序调试就可以了
import org.apache.log4j.Logger; //import org.apache.log4j.PropertyConfigurator; public class RockDeriaI { private static Logger logger = Logger.getLogger(RockDeriaI.class); public static void main( String[] args ) { //PropertyConfigurator.configure("F:/config/log4j.properties"); logger.debug("-----"); } }
注:实际项目中将log4j.properties文件放在src/main/java文件夹下并不是一个好的选择。因此在程序的最开始的时候可以使用log4j自带的配置器PropertyConfigurator对log4j.properties的位置进行配置。如上述代码中被注释掉的部分。配置器会覆盖掉默认的路径,如果配置器路径错误会抛出异常。配置器据说还有其他几种,在此不作赘述。