【发布时间】:2015-03-12 13:53:03
【问题描述】:
我需要在 Java 中触发类似 MS SQL 的查询
select * from customer
where customer.name in ('abc', 'xyz', ...,'pqr');
但我有这个字符串数组列表形式的 IN 子句值。例如:列表看起来像 {"abc","xyz",...,"pqr"}
我创建了一个Prepared Statement:
PreparedStatement pStmt = conn.prepareStatement(select * from customer
where customer.name in (?));
String list= StringUtils.join(namesList, ",");
pStmt.setString(1,list);
rs = pStmt.executeQuery();
但 list 类似于 "abc,xyz,..,pqr",但我希望它为 "'abc','xyz', ..,'pqr'" 这样我就可以将它传递给 Prepares 语句。
如何在没有 GUAVA 帮助程序库的情况下在 JAva 中进行操作。
提前致谢!!
【问题讨论】:
-
我查不出来,但是
String list= StringUtils.join(namesList, "','");呢?