springframework.jdbc.core.JdbcTemplate 准备好的语句

springframework.jdbc.core.JdbcTemplate prepared statement

我刚开始使用 Spring 的 JdbcTemplate。我能够成功收到结果,但现在我正在尝试做一个准备好的语句,但我该如何传递它stateName?

public State getStateByName(String stateName) {
    State state = template.query("select id from state where LOWER(state_name) = LOWER(?) order by id LIMIT 1",
            (result) -> {
                State stateTmp = new State();
                stateTmp.setId(result.getLong("id"));
                return stateTmp;
            });
    return state;
}

不同的查询重载允许您传递参数。

例如: https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/jdbc/core/JdbcTemplate.html#query-java.lang.String-java.lang.Object:A-int:A-org.springframework.jdbc.core.RowMapper-