[英]Java - using functional interface and lambda expression to do logging
我们进行日志记录的传统方法是:
if (logger.isDebugEnabled()) {
logger.debug("something to log, and barbarbar {}", object);
}
但是,使用lambda表达式进行记录以减少代码行和复杂度又如何呢?
logger.debug(() -> return "something to log, and barbarbar " + object);
slf4j或其他记录器没有任何理由不提供这种方式进行记录吗? 对象创建开销造成的?
我们做日志的传统方法是...
在每个用例中都没有必要使用条件logger.isXXXXEnabled()
。 仅在记录需要大量时间才能创建的对象时使用。 例如,当您需要将某些数据库查询或转换为XML / JSON的复杂结构的结果记录到日志中时。
在其他情况下,此检查过多。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.