如何使用Java8在Spring4中执行queryForList?
我试图同时了解Spring4和Java8。我有一节课如何使用Java8在Spring4中执行queryForList?,java,spring,java-8,spring-data,spring-4,Java,Spring,Java 8,Spring Data,Spring 4,我试图同时了解Spring4和Java8。我有一节课 EmployeeDTO |-id |-Emp_Name |-Address 当我尝试使用以下代码获取1名员工时,效果很好: public EmployeeDTO getEmpoloyeebyID(String empId) { return springJdbcTemplate.queryForObject(sql, (rs, rowNum) -> {
EmployeeDTO
|-id
|-Emp_Name
|-Address
当我尝试使用以下代码获取1名员工时,效果很好:
public EmployeeDTO getEmpoloyeebyID(String empId) {
return springJdbcTemplate.queryForObject(sql,
(rs, rowNum) -> {
return new EmployeeDTO(rs.getString("Emp_Name"), rs
.getString("Address"));
}, empId);
}
但是现在我想使用SpringJDBCTemplate和Java8获得一个对象列表。我知道我也许可以通过使用地图绘制工具来完成它。但是我想学习如何像上面的例子那样使用Java8。我看起来很优雅
public List<EmployeeDTO> getAllEmpoloyeeByAge(Integer age) {
return springJdbcTemplate.queryForList(sql,<to-do>, age);
}
public List getAllemployeeBeyage(整数年龄){
返回springJdbcTemplate.queryForList(sql,,age);
}
类没有名为queryForList
的方法,您可以将lambda表达式传递给该方法
您需要使用查询
方法之一,该方法接受SQL字符串、行映射器
和查询参数:
public List<EmployeeDTO> getAllEmployeesByAge(int age) {
return springJdbcTemplate.query(sql, (rs, rowNum) ->
new EmployeeDTO(rs.getString("Emp_Name"), rs.getString("Address")), age);
}
public List getAllEmployeesByAge(int-age){
返回springJdbcTemplate.query(sql,(rs,rowNum)->
新员工姓名(rs.getString(“Emp_Name”)、rs.getString(“Address”)、年龄;
}
请注意,lambda表达式与query
方法的RowMapper
参数匹配