占位符格式化⼯具类(log4j的{}替换原理)占位符替换,我汇总了三种⽅式:
1、JAVA基础功能 String
String.format("Number:%06d, String:%s", 911,  "test");
-->Number:000911, String:test
适⽤场景:类型格式化,占位符类型强匹配
2、JAVA基础功能 MessageFormat.format
MessageFormat.format("a:{1},b.{1}", "1", "2");
-->a:2,b.2
MessageFormat.format("b:{1},a.{0}", "1", "2");
-->b:2,a.1
适⽤场景:可灵活使⽤变量数组
3、log4j占位符替换⼯具类
org.slf4j.helpers.MessageFormatter.format("{}", "~~1").getMessage()
~~1
记住我另外,它还提供了arrayFormat⽅法,参数通过数组的⽅式传⼊
适⽤场景:log4j控制台⽇志打印格式化⼯具类,简化占位符的配置⽅式