我看了hibernate等应用log4j的框架源码,有些类都有下面这句代码
Logger log=Logger.getLogger(XXX.class);
我想知道的是用到log4j的类就需要这样写一个吗?
不能定义一个通用的静态的logger,需要用到log4j的类就使用这个静态的logger来使用吗?
Logger log=Logger.getLogger(XXX.class);
通过参数,你可以知道是哪个类出的异常,你写成静态的完全没问题
[quote]Logger.getLogger(XXX.class);[/quote]
中的XXX.class指定是哪个类的日志,当日志打印出来时可以把类的完整名称打印出来,这样你就知道是哪个类产生的日志信息了
通用、共用没问题,只是你那样打印出来的信息不直观
通过继承的方式,可以减少实例化logger