如何使用spring的jdbcTemplate在SQL查询中指定参数

zig*_*ggy 3 java sql spring jdbc jdbctemplate

我如何在以下jdbctemplate示例中指定'age'参数的值?

String sql = "SELECT * FROM CUSTOMER where age = ? ";

    List<Customer> customers = new ArrayList<Customer>();
    JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);

    List<Map> rows = jdbcTemplate.queryForList(sql);
    for (Map row : rows) {
        Customer customer = new Customer();
        customer.setCustId((Long)(row.get("CUST_ID")));
        customer.setName((String)row.get("NAME"));
        customer.setAge((Integer)row.get("AGE"));
        customers.add(customer);
    }

return customers;
Run Code Online (Sandbox Code Playgroud)

JB *_*zet 5

您可以使用queryForList()方法将参数作为参数,例如:

List<Map<String, Object>> rows = jdbcTemplate.queryForList(sql, theAge);    
Run Code Online (Sandbox Code Playgroud)

学习阅读API文档(以及一般文档).这就是你学习的方式.

  • 谢谢,我正在查看文档,但有点困惑,因为它在检索单行或多行时的工作方式不同,与标准JDBC相比略有不同. (3认同)