尝试使用 JDBC 模板传递列表并返回地图
Posted
技术标签:
【中文标题】尝试使用 JDBC 模板传递列表并返回地图【英文标题】:Trying to pass a list and return a map using JDBC Template 【发布时间】:2018-01-30 05:19:38 【问题描述】:我正在尝试使用 JDBC 模板,但我对它不是很熟悉。 我有一个与多种车型相匹配的汽车制造商列表。我的数据库查询很简单,即。
select * from Model m,Make mk where m.model_id = mk.model_id And ml_name IN (:modelname)
我有一个模型列表,我想在 JDBC 模板中传递这些模型并返回一个 String、List 的 Map,我的意思是所有品牌及其模型的列表。 这听起来像是我在让别人用勺子喂我,但我会用这些回复来学习。
【问题讨论】:
你试过谷歌搜索吗?那里肯定有数百万个例子...... 【参考方案1】:我完全不知道您的数据结构,但您尝试做的事情可以通过以下方式完成
jdbcTemplate.query("select m.name as model, mk.name maker from Model m,Make mk where m.model_id = mk.model_id And ml_name IN (:modelname)", Arrays.asList('suv', 'sedane', 'zip'), (ResultSet rs) ->
HashMap<String,List<String>> results = new HashMap<>();
while (rs.next())
if (results.get(rs.getString('maker')) == null)
reslts.put(rs.getString('maker'), new ArrayList<>());
results.get(rs.getString('maker')).add(rs.getString("model"));
return results;
);
【讨论】:
而不仅仅是 SUV。我怎样才能传递一个列表 @Yourfavouritenoob 更新了我的代码,看看你现在能不能看懂。 感谢您的努力。但它说它不识别 labmda 表达式。 那么你可能在 Java 7 上运行,将 lambda 替换为 Anonymous 内部类。以上是关于尝试使用 JDBC 模板传递列表并返回地图的主要内容,如果未能解决你的问题,请参考以下文章
从 React Context 消费返回无法读取未定义的属性“地图”