더북(TheBook)

다음은 테이블의 필드 값을 조회하여 원하는 필드에 대해 문자열로 가져오는 예입니다.

queryForObject() 메서드 사용 예 3

String lastName = this.jdbcTemplate.queryForObject(
       "select last_name from t_actor where id = ?", new Object[]{1212L}, String.class);

t_actor 테이블에 저장된 행 중에서 id가 1212L과 일치하는 필드 last_nameString 타입으로 가져와 반환합니다.

다음은 테이블의 필드 값을 조회하여 원하는 필드들을 도메인 객체 하나로 가져오는 예입니다.

queryForObject() 메서드 사용 예 4

Actor actor = this.jdbcTemplate.queryForObject("select first_name, last_name from t_actor where id = ?", new Object[]{1212L}, new RowMapper<Actor>() {
    public Actor mapRow(ResultSet rs, int rowNum) throws SQLException {
        Actor actor = new Actor();
        actor.setFirstName(rs.getString("first_name"));
        actor.setLastName(rs.getString("last_name"));
        return actor;
      }
});

t_actor 테이블에 저장된 행 중에서 id가 1212L과 일치하는 결과 값을 ResultSet으로 가져와 Actor 객체 타입의 actor에 저장합니다.

이와 같이 RowMapper 클래스를 사용하면 결과 값을 ResultSet으로 반환하여 테이블의 필드 이름 또는 순번으로 접근할 수 있고, 도메인 객체에 매핑할 수도 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.