使用 JEE 7 创建我的 RESTful 服务架构的新版本,部署到 Wildfly 9 实例,我想知道是否有一种巧妙的方法来创建日志系统,你能建议一些模式吗?非常感谢。
最佳答案
我正在为 JavaEE 7 JAX-RS 项目使用带有 SLF4J 接口(interface)的简单生产者。
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());
}
}
使用注入(inject)非常方便。
@Inject
private Logger logger;
并且可以在不影响任何业务类的情况下轻松更改实现。由于实现 slf4j-simple 对我来说已经足够了,但是如果你需要更高级的东西,我会看看已经建议的 logback 或 log4j 2。
关于jakarta-ee - 使用 CDI 记录最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36292033/