如何仅从 JdbcTemplate queryForList 获取 return 个字符串对象?

How to only return String objects from JdbcTemplate queryForList?

默认情况下,queryForList() returns 每个为 Map<String, Object>。对象可以是普通的Stringjava.sql.Timestamp

List<Map<String, Object>> result = jdbcTemplate.queryForList(sql, params);

问题:如何强制返回任何值作为 String.class?所以我会有 Map<String, String>.

我试过了:jdbcTemplate.queryForList(sql, params, Map<String, String>.class) 但是该语句似乎无效并且无法编译。

也许有更好的方法,但以下方法有效:

jdbcTemplate.query(sql, params, new ColumnMapRowMapper() {
    @Override
    protected Object getColumnValue(ResultSet rs, int index) {
       return rs.getString(index);
    }
}