以前做日志都是用Log4j,这次了解了一下Java Logging Framework(JUL),个人感觉如果只是为了Debug和输出到文件那这个足够使用了,而且不需要另加包(jar)! 但如果要写DB,JMS,SMTP都需要自己扩展.建议还是用Log4j.
想要系统的学习可以看官方的Guide http://java.sun.com/j2se/1.5.0/docs/guide/logging/overview.html
需要小例子的同志到google找吧,下面说下几个注意点 :
- 配置
JUL的默认配置文件是logging.properties ,在 $JAVA_HOME/jre/lib下 (Mac 在 $JAVA_HOME/lib). 当然自己也可以修改文件位置,如:-Djava.util.logging.config.file=xxxpath/logging.properties
在tomcat的conf下就有个logging.properties,同时注意catalina.sh 里就有这样代码# Set juli LogManager if it is present if [ -r "$CATALINA_BASE"/conf/logging.properties ]; then JAVA_OPTS="$JAVA_OPTS -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager" LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties" fi - Handler相当于Log4j中的Appender 但要注意这个Handler上也有个Level (Tomcat 默认都是FINE).也就是说最后是否会记日志还要看这里.这个不像Log4j只有Logger上有Level !
小结:
总的来说还是Log4J强大些,Log4J所提供的Appender丰富些!但如果需求的要求不高,只是简单写文件的话那JUL还是可以考虑的 ![]()
本文对比了Java Logging Framework (JUL) 和 Log4j 的功能与使用场景。JUL作为标准库的一部分,适用于简单的日志记录需求,但在扩展性和定制化方面不如Log4j。Log4j提供了更丰富的Appender选项,适合复杂的应用场景。
2152

被折叠的 条评论
为什么被折叠?



