0

我需要将所有硬编码的错误日志移动到数据库。一些错误日志的格式为

"xxxxx" + variable + "xxxxxx";

无法更改表的结构。我也不能根据位置进行一些字符串插入,因为数据库中的值总是可以改变的。

在任何 Java 库或第三方库中是否有一个功能,您可以在字符串值中使用占位符,并且它们被变量替换。举个例子,我们可以想到旧的

printf("bla %s %d bla,", var, var2);

或 SQL PreparedStatement 类

stmt("select * from blah where a = ?"); 

和'?被可变内容替换。

任何建议都会有很大帮助。

4

2 回答 2

3

您可以像这样使用MessageFormat

String log = "xxxxx [{0}] xxxxxx";
String variable = "some_string";
String result = MessageFormat.format(log, variable);
于 2017-12-04T18:15:07.813 回答
2

JDK 7+ 具有String.format()我认为您正在寻找的东西

于 2017-12-04T18:39:46.893 回答