如何在java格式中分离括号

时间:2015-03-25 15:53:48

标签: java sql format

我想创建SQL更新查询。在这里,我创建请求的SET部分:

String placeholders = "{0} = {1}";
StringBuilder newvalues = new StringBuilder();
for( String key : fields.keySet() ) {
    newvalues.append(MessageFormat.format(placeholders, key, fields.get(key)));
}

此处字段是Map对象。 SET中所有值都没有''括号:

的问题
SET column1 = value1, column2 = value2

值可以像'1.234.2344'。这就是我需要以某种方式添加到占位符的原因。但是这样做:

String placeholders = "{0} = '{1}'";

String placeholders = "{0} = \'{1}\'";

不会在字符串中添加''。相反, format 函数会保留{1}((( 如何将''添加到占位符模板,以便格式化格式化)

1 个答案:

答案 0 :(得分:0)

来自java doc MessageFormat java doc

  

在String中,一对单引号可用于引用除单引号之外的任意字符。例如,模式字符串“'{0}'”表示字符串“{0}”,而不是FormatElement。单引号本身必须用加倍的单引号''

表示

所以你需要做

String placeholders = "{0} = ''{1}''";