使用 jdbcTemplate.queryForList 方法执行 SQL IN 查询
在使用 jdbcTemplate.queryForList 方法时,可以将 SQL 语句中的 IN 后面的参数作为一个数组传递给 queryForList 方法。下面是一个示例:
import org.springframework.jdbc.core.JdbcTemplate;
public class ExampleDAO {
private JdbcTemplate jdbcTemplate;
public List<Map<String, Object>> getData(List<Integer> ids) {
String sql = "SELECT * FROM table_name WHERE id IN (?)";
// 将 ids 转换为数组
Object[] params = ids.toArray();
// 使用 queryForList 方法执行查询
List<Map<String, Object>> result = jdbcTemplate.queryForList(sql, params);
return result;
}
}
在上面的示例中,getData 方法接收一个 List<Integer> 类型的参数 ids,该参数包含了 IN 后面的参数。首先,我们将 ids 转换为一个数组 params,然后将其作为参数传递给 queryForList 方法。在 SQL 语句中,我们使用 ? 占位符来代表 IN 后面的参数,然后在方法调用时,将 params 作为第二个参数传递给 queryForList 方法。
请注意,queryForList 方法返回一个 List<Map<String, Object>> 类型的结果,其中每个元素都是一个包含列名和对应值的 Map 对象。
原文地址: https://www.cveoy.top/t/topic/qAkC 著作权归作者所有。请勿转载和采集!