JdbcTemplate IN子句用于String元素

我使用NamedParameterJdbcTemplate表示Clause元素,其中一个似乎是ListJdbcTemplate替换它们?,?,?…(列表大小)但是对于带有List的IN子句,它必须是’?’,’?’….

有没有解决的办法?

还有一些其他类似的问题,可能会为您提供有用的答案:

如何有效地使用Spring的JDBCTemplate执行IN()SQL查询?

为了使这种查询方式在我的最终工作,我必须从普通的旧JDBCTemplate切换到NamedParameterJdbcTemplate

这是一些示例代码:

 String query = "select * from table where columnName in (:listOfValues)"; List nameRecordIDs = new ArrayList(); // ... // add values to collection, then // ... Map namedParameters = Collections.singletonMap("listOfValues", nameRecordIDs); namedparameterJdbcTemplate.query(query, namedParameters,new MyMapper());