怎样将log4j写在公共函数里?

每次都在一个类中写以下的代码,大家不觉得重复吗?有没有办法写在公共函数里呢?这样每次可以调用

  private static final Logger LOG    = LoggerFactory.getLogger(SqlUtils.class);

我本来是想在全局函数中写个公共LOG变量,获取调用该变量的Class,然后Class.forName(className)来初始化这个变量的。如下:

    public static Logger LOG    = LoggerFactory.getLogger(Class.forName(getLastClassName()));

然并卵。。。。
大家有没有其他的方法可以分享下,或许我本身的做法就有问题呢?

你的思路是正确的。我们项目开发时都是提供了一个LoggerFactory工厂类,getLogger方法返回一个log4j的Logger对象的。
代码就是这样的啊,你给出的第一行已经最简了。参数可以是this.class。不用写类名称的。