Mar*_*hel 3 logging design-patterns java-ee cdi
使用JEE 7创建新版本的RESTful服务架构,部署到Wildfly 9实例,我想知道是否有一种创建日志系统的聪明方法,你能建议一些模式吗?非常感谢.
sim*_*mon 11
我正在使用一个带有SLF4J接口的简单生产者来实现JavaEE 7 JAX-RS项目.
import javax.enterprise.inject.Produces;
import javax.enterprise.inject.spi.InjectionPoint;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class LoggerProducer
{
@Produces
public Logger getLogger(final InjectionPoint ip)
{
return LoggerFactory.getLogger(ip.getMember().getDeclaringClass());
}
}
Run Code Online (Sandbox Code Playgroud)
使用注射剂非常方便.
@Inject
private Logger logger;
Run Code Online (Sandbox Code Playgroud)
并且可以在不影响任何业务类的情况下轻松更改实现.由于实现slf4j-simple对我来说已经足够了,但是如果你需要更高级的东西,我会看看已经建议的logback或log4j 2.