占位符格式化工具类(log4j的{}替换原理)

    占位符替换,我汇总了三种方式:

1、JAVA基础功能 String

String.format("Number:%06d, String:%s", 911,  "test"); 

-->Number:000911, String:test

适用场景:类型格式化,占位符类型强匹配

 

2、JAVA基础功能 java.text.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控制台日志打印格式化工具类,简化占位符的配置方式

 




posted @ 2018-04-12 15:17  thon  阅读(3553)  评论(0)    收藏  举报