jdbc模板中的SQL
我已经开始使用Spring JdbcTemplates,我对SQL有一个问题: 在以下代码中:jdbc模板中的SQL,sql,jdbctemplate,Sql,Jdbctemplate,我已经开始使用Spring JdbcTemplates,我对SQL有一个问题: 在以下代码中: String sql = "SELECT * FROM CUSTOMER WHERE CUST_ID = ?"; Customer customer = (Customer)getJdbcTemplate().queryForObject( sql, new Object[] { custId }, new CustomerRowMapper()); “ID=?”是什么意思
String sql = "SELECT * FROM CUSTOMER WHERE CUST_ID = ?";
Customer customer = (Customer)getJdbcTemplate().queryForObject(
sql, new Object[] { custId }, new CustomerRowMapper());
“ID=?”是什么意思?
我们在这个查询中寻找什么?
这个问题似乎还没有完成
谢谢问号是一个可替换的SQL参数。第二条语句中的“newobject[]{custId}”参数提供该参数的值。例如,如果“custId”的值是42,那么生成的SQL查询将是“SELECT*fromcustomer,其中custId=42”。您应该使用参数化SQL查询来减少SQL注入攻击的可能性,并促进查询计划的缓存。如果您不熟悉,我建议您阅读它们。我可以使用JdbcTemplate进行命名参数化查询吗?非常感谢。是的,请查看PreparedStatementCreator和PreparedStatementSetter类。