NamedParameterJdbcTemplate JdbcTemplate 的扩展名

NamedParameterJdbcTemplate 类增加了对使用命名参数编写 JDBC 语句的支持,而不是仅使用经典占位符(’?’)参数编写 JDBC 语句。NamedParameterJdbcTemplate 类包裹了一个 JdbcTemplate,并委托包装的 JdbcTemplate 来完成它的大部分工作。

DataSource dataSource = ... //
NamedParameterJdbcTemplate jdbcTemplate = new NamedParameterJdbcTemplate(dataSource);

String sql = "SELECT count(*) FROM customer WHERE city_name=:cityName";
Map<String, String> params = Collections.singletonMap("cityName", cityName);
int count = jdbcTemplate.queryForObject(sql, params, Integer.class);