2016-06-20 1 views
1

스프링 4와 자바 8을 동시에 사용하려고합니다. 내가 한 직원을 가져 오기 위해 아래 코드를하려고하면 잘 작동Java 8을 사용하여 Spring 4에서 queryForList를 수행하는 방법은 무엇입니까?

EmployeeDTO 
|-id 
|-Emp_Name 
|-Address 

I 클래스에게 있습니다

public EmployeeDTO getEmpoloyeebyID(String empId) { 

     return springJdbcTemplate.queryForObject(sql, 
       (rs, rowNum) -> { 
        return new EmployeeDTO(rs.getString("Emp_Name"), rs 
          .getString("Address")); 
       }, empId); 
    } 

하지만 지금은 봄 JdbcTemplate을 자바 (8)을 사용하여 개체의 목록을 얻으려면 Mappers를 사용하여 문제를 해결할 수 있음을 알고 있습니다. 하지만 위의 예제와 같이 Java 8로 수행하는 방법을 배우고 싶습니다. 나는 우아 해 보인다.

public List<EmployeeDTO> getAllEmpoloyeeByAge(Integer age) { 

     return springJdbcTemplate.queryForList(sql,<to-do>, age); 
    } 

답변

2

클래스 JdbcTemplate 당신이 당신의 람다 식을 전달할 수 queryForList라는 방법이 없습니다. 귀하의 람다 표현식은 query 방법의 RowMapper 인수를 일치

public List<EmployeeDTO> getAllEmployeesByAge(int age) { 
    return springJdbcTemplate.query(sql, (rs, rowNum) -> 
     new EmployeeDTO(rs.getString("Emp_Name"), rs.getString("Address")), age); 
} 

참고 :

당신은 query 방법 중 하나는 SQL 문자열을 사용 the one하는 RowMapper 및 쿼리 인수를 사용해야합니다.

관련 문제