我有一个数据片段:
foo{
string: one
string: two
list<string>: listOne
list<string>: listTwo
}
使得在数据库中一个与listOne的多个条目相关联。
背景不多,我甚至在哪里寻找答案都不知所措。我收到反馈,以尝试在代码审阅期间消除jdbctemplate.query,其中“可能有一种使用@autowire减少这种情况的方法”。
无需共享代码,我只需要一个地方即可开始寻找答案。我去过Spring网站,但看不到任何可以使用的东西。而且我没有看到任何与我要找的谷歌搜索结果相似的内容。
我应该以我是一个新开发人员的事实作为开头,因此即使是一个简单的答案也可能不是我尝试过的。之所以这样,是因为我对listOne和listTwo的查询正在返回列。所以我首先尝试使用带有返回字符串的jdbcTemplate.query()的映射器。但是jdbc不喜欢那样。所以我最终从映射器返回了一个列表。然后jdbc将这些答案转换为list>,然后我依次遍历这些list>以将其转换为列表并将其存储在foo中。在我看来,理想的解决方案允许我将两个查询结合起来,并且映射器看起来像(伪代码):
public foo fooMapper implements<RowMapper>(){
foo.one = resultSet.get("thingOne")
foo.two = resultSet.get("thingTwo")
foo.listOne = resultSet.get("[a portion of the column]listThingOne")
foo.listTwo = resultSet.get("[a portion of the column]listThingTwo")
return foo;
}
应该注意,结果集是单向的,是我在尝试使用string []而不是列表时发现的。