如果我们不允许在会话bean中使用静态变量,那么如何定义记录器呢?

ani*_*t99 3 java session-variables

我一次又一次地读到,我们不应该在会话bean中使用静态变量.然后,我应该如何获得这个bean的记录器并在bean方法中使用它?

mat*_*t b 7

我认为你过于严格地解释"规则".

您不应将任何类型的servlet/session/bean状态存储在静态变量中,因为该引用在该类型的所有实例之间共享.

但是,记录器(通常或不应该)保持任何状态.如果您按照通常的做法,根据类名称命名/分类记录器,那么使用对Logger实例的静态引用是非常好的IMO:

public class SomeTypeOfBean {
    private static final Logger log = Logger.getLogger(SomeTypeOfBean.class);
    //...
}
Run Code Online (Sandbox Code Playgroud)