2017년 1월 23일 월요일

[자바교육/스프링교육/스프링프레임워크/스프링부트학원추천_탑크리에듀]RowMapper

모든 person 객체를 얻을 수 있는 메소드가 필요하다면  ResultReader를 구현함으로써 가능 
 스프링은 RowMapperResultReader 라는 ResultReader 구현 클래스를 제공한다. 이를 이해하기 위해서 먼저 RowMapper 인터페이스에 대해 알아야 하는데 RowMapper는 ResultSet의 레코드와 객체를 매핑 시키는 역할을 한다. 


public class PersonRowMapper implements RowMapper { 
public Object mapRow(ResultSet rs, int index) throws SQLException { 
Person person = new Person(); 
person.setId(new Integer(rs.getInt("id"))); 
person.setFirstName(rs.getString(“first_name")); 
person.setLastName(rs.getString(“last_name")); 

return person; 
}//: 
}///~ 


getAllPerson() 구현하기 

public List getAllPersons() { 
  
    String sql = “select id, first_name, last_name from person “; 

    return jdbcTemplate.query( sql, new RowMapperResultReader(new PersonRowMapper())); 




RowMapper를 시용한 getPerson() 


//아이디를 통해 person 객체를 얻어오는 메소드 
public Person getPerson(final  Integer id) { 
        String sql = “select id, first_name, last_name from person where id =? “; 
        final Person person = new Person();            //질의 대상 객체 생성 

        final Object[] params = new Object[] { id };    //질의 파라미터 생성 

  List list = jdbcTemplate.query(sql, params, new RowMapperResultReader(PersonRowMapper())); 

return (Person) list.get(0); 
}//: 

댓글 없음:

댓글 쓰기