java指定默认消息_java – Log4J的默认MessageFactory是什么

>如果未设置消息工厂,则默认使用ParameterizedMessageFactory.

>默认情况下,log4j使用消息工厂进行参数化消息,因此您可以执行logger.warn(“hello {}”,user.getName());

>通过在获取记录器时调用LogManager.getLogger(name,messageFactory)来设置自己的工厂.

如果需要String.format类型的params(System.out.printf格式),可以使用LogManager.getLogger(MyClass.class,new StringFormatterMessageFactory())来获取记录器.

如果您最常见的用法是参数化消息({}格式),但如果您偶尔希望更多地控制字符串格式化程序提供的输出格式,则可以正常声明您的记录器(因此它使用{}参数化消息),以及使用Logger.printf方法.

例:

class MyClass {

private static Logger logger = LogManager.getLogger(MyClass.class);

public void someMethod() {

// use printf here to precisely control the number of digits displayed

logger.printf(Level.INFO, "pi: %.5f", Math.PI);

}

}

这都是代码.不涉及配置(XML或其他).

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值