【发布时间】:2012-04-19 15:36:19
【问题描述】:
getSimpleJdbcTemplate().query(sql, getMapper()); 返回列表,但我需要一个映射,其中键将存储对象字段之一的数据。例如,我有一个名为“货币”的对象,其中包含字段:id、代码、名称等。上面的代码将返回 List 对象,但我想通过 id 从 Map 获取货币。现在,我编写了以下代码:
@Override
public Map<Integer, Currency> listCurrencies() {
String sql = "select cur_id, cur_code, cur_name ... from currencies";
List<Currency> currencies = getSimpleJdbcTemplate().query(sql, getMapper());
Map<Integer, Currency> map = new HashMap<Integer, Currency>(currencies.size());
for (Currency currency : currencies) {
map.put(currency.getId(), currency);
}
return map;
}
有什么方法可以做同样的事情,但不创建 List 对象并在其中循环吗?
【问题讨论】:
标签: spring jdbctemplate spring-jdbc