Spring JDBC 获取地图列表

Spring JDBC obtaining a list of maps

可能是一些超级简单的东西。我想从一个简单的查询中检索两组键 (String) 和值 (double),其中 returns 一行两列。

必须有一种比我下面的方法更简洁的方法来完成它 - 只需 10 行就可以完成工作,这似乎有点过分了。有什么建议可以代替吗?谢谢!

List<Map<String, Double>> RecordList = namedParameterJdbcTemplate.query(Queries.GET_DATASET(),
                getParsedQuery(request), resultSet -> {
                    List<Map<String, Double>> list = new ArrayList();
                    HashMap mMap = new HashMap();
                    mMap.put("this_year", resultSet.getDouble("this_year"));
                    list.add(mMap);
                    mMap = new HashMap();
                    mMap.put("last_year", resultSet.getDouble("last_year"));
                    list.add(mMap);
                    return list;
                });

我会使用 Apache Commons 的 MutablePair。您可以找到 javadoc here:

通过这种方法,您可以将 this_year 保留在 L 中,将 last_year 保留在 R 中。 L表示左对象,R表示右对象。

您可以用类似的东西替换代码:

return MutablePair.of(resultSet.getDouble("this_year"),resultSet.getDouble("last_year")));

如果您不想使用 Apache Commons,请查看一些 alternatives