log4j是Apache的一个开源项目,我们不去考究它的起源时间,但是据我了解,log4j 1已经不再更新了。
1.配置文件类型
log4j是通过一个*.properties的文件作为主配置文件的,而现在的log4j 2则已经弃用了这种方式,采用的是*.xml,*.json或者*.jsn这种方式来做,可能这也是技术发展的一个必然性,毕竟properties文件的可阅读性真的是有点差2.核心JAR包
log4j只需要引入一个jar包即可:
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
而log4j 2则是需要2个核心jar:
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.5</version>
</dependency>
同时大家发现没,log4j和log4j 2的包路径是不同的,Apache为了区分,包路径都更新了,这样大家甚至可以在一个项目中使用2个版本的日志输出哦!(不过我想你们没有那么调皮吧,嘿嘿)3.文件名
log4j的配置文件名是log4j.xml或者是log4j.properties,
log4j2的配置文件名是log4j2.xml
4.Log调用
log4j和log4j2调用都是很简单的。
log4j:
import org.apache.log4j.Logger;
private final Logger LOGGER = Logger.getLogger(Test.class.getName());
log4j2:
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
private static Logger logger = LogManager.getLogger(Test.class.getName());