sql 语句中格式化,如果加入{}占位符,要替代的是整形变量,而恰好这个整形变量的位数超过4位,
MessageFormat.format 会在这个整形变量中默认每隔三位加一个逗号,类似这样:1000,会被格式化成1,000,
insert into table1 (a,b,c) values({0},{1},{2}),
格式后的sql会变成这样,
insert into table1 (a,b,c) values('a',1,000,'ddd'),
后面的values变成4位了,
解决办法,用第三方orm或者 变量转换成String类型。推荐用myBatics