问个log4j的应用一个问题。

我看了hibernate等应用log4j的框架源码,有些类都有下面这句代码
Logger log=Logger.getLogger(XXX.class);

我想知道的是用到log4j的类就需要这样写一个吗?

不能定义一个通用的静态的logger,需要用到log4j的类就使用这个静态的logger来使用吗?

3个回答

Logger log=Logger.getLogger(XXX.class);
通过参数,你可以知道是哪个类出的异常,你写成静态的完全没问题

[quote]Logger.getLogger(XXX.class);[/quote]

中的XXX.class指定是哪个类的日志,当日志打印出来时可以把类的完整名称打印出来,这样你就知道是哪个类产生的日志信息了

通用、共用没问题,只是你那样打印出来的信息不直观

通过继承的方式,可以减少实例化logger

立即提问