본문 바로가기
IT/spring

Spring JdbcTemplate의 query 메소드

by 뉴코딩맨 2023. 6. 22.
Spring 프레임워크에서 JdbcTemplate은 JDBC를 사용하여 데이터베이스와 상호 작용하는 데 사용되는 강력한 도구입니다. 그 중 query 메소드는 SQL 쿼리를 실행하고 결과를 반환하는 데 사용됩니다. Spring JdbcTemplate의 query 메소드에 대해 자세히 알아보고, 사용 방법과 예시로 설명하겠습니다.
 
 

query 메소드란?

query 메소드는 SQL 쿼리를 실행하고 결과 집합을 반환하는 데 사용됩니다. 주어진 SQL 쿼리를 실행하고 결과 집합을 Java 객체로 변환하여 반환합니다. 이 메소드는 주로 데이터베이스에서 데이터를 검색해야 할 때 사용됩니다.
 
 

사용 방법

query 메소드는 다음과 같은 형식으로 사용됩니다.
 
<T> List<T> query(String sql, RowMapper<T> rowMapper, Object... args) throws DataAccessException;
  • sql: 실행할 SQL 쿼리문입니다.
  • rowMapper: 결과 집합의 각 행을 Java 객체로 변환하기 위해 사용되는 RowMapper입니다.
  • args: SQL 쿼리에 전달할 인자들입니다.

 

 

예시

다음은 query 메소드의 예시입니다.
 
public class EmployeeDao {
    private JdbcTemplate jdbcTemplate;

    public List<Employee> getEmployeesByDepartment(String department) {
        String sql = "SELECT * FROM employees WHERE department = ?";
        RowMapper<Employee> rowMapper = new EmployeeRowMapper();
        List<Employee> employees = jdbcTemplate.query(sql, rowMapper, department);
        return employees;
    }
}
 
위의 예시에서는 EmployeeDao 클래스에서 getEmployeesByDepartment 메소드가 정의되어 있습니다. 해당 메소드는 employees 테이블에서 주어진 department에 해당하는 직원들의 정보를 가져오는 데 사용됩니다. SELECT 쿼리를 실행한 결과를 Employee 객체의 리스트로 변환하기 위해 EmployeeRowMapper를 사용합니다. jdbcTemplate.query 메소드를 호출하여 쿼리를 실행하고 결과를 반환합니다.
 
 

결론

Spring JdbcTemplate의 query 메소드는 SQL 쿼리를 실행하고 결과를 반환하는 강력한 메소드입니다. 데이터베이스에서 데이터를 검색하고 Java 객체로 변환하는 작업을 효율적으로 처리할 수 있습니다. 이를 통해 우리는 Spring JdbcTemplate을 사용하여 데이터베이스와의 상호 작용을 간편하게 처리할 수 있습니다.
 

댓글