7

如何使用ResultSetExtractor从数据库中检索数据?这里我使用 oracle 10g 作为后端。如果从员工表中搜索员工详细信息,哪个更好用ResultSetExtractorRowMapper

4

2 回答 2

0

从 java 8 开始,也可以使用闭包(lambdas)作为行映射例程:

String sql = "select first_name, last_name from PERSON where id = ?";

public Person jdbcTemplate.query(sql,(rs)->{return new Person(rs.getString("first_name"), rs.getString("last_name"));}, int id);

第一个方法参数是您的查询,第二个 - 您的映射器 - 需要 Person(String, String) 构造函数。“first_name”、“last_name”是 db 列名。第三 - id 的参数,它是一个可变参数,您可以在其中放置更多参数。

于 2016-10-26T19:55:57.603 回答
-1

使用 ResultSetExtractor 的更简单示例:

MyDataStructure result = jdbcTemplate.query(sql, new ResultSetExtractor<MyDataStructure>() {

  @Override
  public MyDataStructure extractData(final ResultSet rs) throws ... {
    // collect data from rs here ...
    return myData;
  }
});
于 2015-11-05T12:04:42.823 回答