我正在使用 slf4j 来跟踪信息。我的代码是
private static final Logger log = LoggerFactory.getLogger(ObjectTest.class);
log.trace("Time taken to store " + count
+ " objects of size " + size + " is " + (time) + " msecs");
log.trace("Time taken to store {} objects of size {} is {} msecs",
new Object[] { count, size, time });
log.trace("Time taken to store {} objects of size {} is {} msecs",
count, size, time);
这将是记录跟踪的首选机制。
最佳答案
3 是最好的。
3 和 2 生成相同(或几乎相同)的字节码,但 3 更容易输入且更短,因此 3 优于 2。
如果不启用跟踪,则 1 必须执行字符串连接(“存储时间”+ count + ....),这有点昂贵,而 2 仅在启用跟踪时才进行字符串连接,这就是为什么 3优于 1。
关于java - 有没有正确的方法在 slf4j 中传递参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7102339/