利用spring减少数据库调用

时间:2019-06-13 18:09:52

标签: spring optimization jdbc

我有一个数据片段:

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 []而不是列表时发现的。

0 个答案:

没有答案