Apache Log4j是著名的Java日志框架之一,在早些年应用最广。但近两年来,随着SLF4J和LogBack的兴起,很多流行的开源框架在日志模块方面逐步转移到SLF4J+LogBack上,Log4j日渐衰落。Apache Log4j 2.0的类图看起来与Logback相似,如图所示:那么,Apache Log4j 2.0有什么特点呢?请看下面。1. API隔离Log4j 2.0学习了SLF4J和LogBack的优点,把API及其实现类进行了分离。2. 性能改进官方称在很多情况下,性能比Logback更强。比较表如下:3. 支持多种APIApache Log4j 2.0提供了对SLF4J和Apache Commons Logging API的支持。4. 自动重载配置这一点与Logback相同,Log4j 2.0在日志配置文件修改了后,可以自动进行重载,让配置生效。5. 高级筛选器这一点与Logback相同,Log4j 2.0支持基于上下文数据、标识、正则表达式和日志事件中的其它组件的过滤。6. 插件架构所有配置的组件都定义为Log4j的插件。7. 属性支持在配置文件中可以引用属性,还可以直接替代或传递到组件。结论:Log4j 2.0与LogBack相似,可以说各方面都相似,因此广大Java开发者又多了一种选择。仅此而已。