JDK8 람다표현식 예제

최종수정일: 2015.04.14

기존의 사용 예

                RowMapper<'User'> rm = new RowMapper'<'User'>'() {
                    //RowMapper 인터페이스 구현
                    @Override
                    public User mapRow(ResultSet rs) throws SQLException {
                        //반환할 새로운 유저객체 생성
                        return new User(
                            rs.getString("userId");
                            rs.getString("password");
                            rs.getString("name");
                            rs.getString("email");
                        );
                    }
                }

                JdbcTemplate template = new JdbcTemplate();
                //template의 executeQuery메서드의 인자로 rm 전달
                return template.executeQuery(sql, rm, userId);
            

람다 표현식의 사용

                //RowMapper클래스가 FunctionalInterface 어노테이션으로 선언되어있어야한다.
                RowMapper<'User'> rm = rs ->
                new User(rs.getString("userId"),
                rs.getString("password"), rs.getString("name"),
                rs.getString("email"));

                JdbcTemplate template = new JdbcTemplate();
                //template의 executeQuery메서드의 인자로 rm 전달
                return template.executeQuery(sql, rm, userId);