如何编写spring jdbc批量选择sql语句

时间:2013-12-21 03:52:49

标签: spring-jdbc

需要从List传递两个参数。需要从List中读取每个元素ABCDTO,然后传递到选择a = abcDTO.a和b = abcDTO.b这样的语句。

请告诉我使用哪种jdbc模板方法。

1 个答案:

答案 0 :(得分:2)

我不太确定你要求的是什么。这听起来像你想知道如何为你的jdbcTemplate编写SQL语句....或者你可能要求如何遍历resultSet?或者,也许哪种方法会将resultSet作为List?

我很乐意帮助,但请澄清你的问题。有很多帖子可以解释(非常好)每个主题。我首先要使用springs tutsAPI开始学习。

此外,如果您想让您的同事或将来更轻松一些,请考虑使用JdbcDaoTemplate类或NamedParameterJdbcTemplate。这些有助于简化代码并使维护更容易(imo)。

以下是使用JdbcTemplate和SQL的示例:

private static final String  SQL_RETRIEVE = "SELECT FATHER, MOTHER, SON " +
    "FROM DATABASENAME.TABLENAME WHERE FATHER = ? AND MOTHER = ?";

@Autowired
private JdbcTemplate jdbcTemplate;

public Family retrieve(String pFather, String pMother) {
    return this.jdbcTemplate.queryForObject(SQL_RETRIEVE, Object[] {pFather, pMother},
        new RowMapper<Family>() {
            @Override
            public Family mapRow(ResultSet pResultSet, int pRowNumber) throws SQLException {
                final Family family = new Family();
                family.setFather(pFather);
                family.setMother(pMother);
                family.setSon(pResultSet.getString("SON"));

                return family;
                }
        });
}