是否可以在logback中使用MessageFormat?
我看到它使用了slf4j MessageFormat ter ,因为它的速度更快,如下所示: Out of curiosity -- why don't logging APIs implement printf()-like logging methods?
SLF4J使用自己的消息格式实现,这种实现有所不同 来自Java平台。这是合理的事实 SLF4J的实施速度提高了约10倍,但代价是成本 非标准且不灵活。
ideia是使用MessageFormat的完整堆栈功能:
Object[] arguments = {
new Integer(7),
new Date(System.currentTimeMillis()),
"a disturbance in the Force"
};
String result = MessageFormat.format(
"At {1,time} on {1,date}, there was {2} on planet {0,number,integer}.",
arguments);
output: At 12:30 PM on Jul 3, 2053, there was a disturbance
in the Force on planet 7.
任何人?
答案 0 :(得分:0)
我认为你回答了自己的问题......基本上这是一个性能问题。如果slf4j实现被迫查找和解析参数化......那么......在开发系统中似乎没有人想要的开销。
答案 1 :(得分:0)
Log4j 2支持slf4j格式,MessageFormat和String.format语法,并支持一组printf方法。