log4j学习笔记

关键接口:
Logger
1对应n个Appender

Appender主要分为
ConsoleAppender
FileAppender
RollingFileAppender  DailyRollingFileAppender-每天一个
WriterAppender

Appender 1对1 个Layout
Layout主要有:
PatternLayout 这个才可以有ConversionPattern的option
Ttcc。。
Html.
SimpleLayout..


Logger又分
根Logger
针对包的Logger

logger的预判断只有
isDebugEnabled
isTraceEnabled
isInfoEnabled

为什么!?却没有isErrorEnabled,可能是因为error就都是要抛出来的,所以就没有了吧
但是,类似用法是:
  if (logger.isDebugEnabled()) {
        logger.debug("New SecurityContext instance will be associated with
        SecurityContextHolder");
   }


在每个需要的地方,都写上logger.isXXXEnabled,不懂为什么不把这个写进源码里面呢?



一般来说,大都数的java开源框架都采用了commings-logging的api,
从源码的
  protected static final Log logger = LogFactory.getLog(HttpSessionContextIntegrationFilter.class);
( Log、LogFactory都是  org.apache.commons.logging包下的类。)
就可以看出。

而spi呢多数是log4j


http://www.iteye.com/topic/378077

你可能感兴趣的:(log4j)