
JDBC 직접 사용하는 것 보다는 JDBC를 편리하게 사용하는 다양한 기술이 존재함
대표적으로 SQL Mapper
와 ORM 기술
가 있음
01. JDBC 직접 사용
애플리케이션 로직에서 JDBC에게 SQL 전달
사용 방법이 복잡함

02. SQL Mapper

개념
애플리케이션 로직
이 SQL Mapper에게 SQL을 전달하면 SQL Mapper
가 SQL 응답 결과를 객체로 변환해 SQL을 JDBC
에게 전달
장점 : JDBC 편리하게 사용하도록 도와줌
- SQL 응답 결과를 객체로 편리하게 변환
- JDBC 반복 코드를 제거
단점 : 개발자가 SQL을 직접 작성해야 함
대표 기술 : 스프링 JdbcTemplate, MyBatis
03. ORM 기술

개념
- ORM은 객체를 관계형 데이터베이스 테이블과 매핑해주는 기술
장점
- 개발자는 반복적인 SQL을 직접 작성하지 않음
- ORM 기술이 개발자 대신에 SQL을 동적으로 만들어 실행
- 각각의 데이터베이스마다 다른 SQL을 사용하는 문제도 해결
대표 기술
- JPA, Hibernate, 이클립스링크
- JPA는 자바의 ORM 표준 인터페이스이고, 이것을 구현한 것으로 Hibernate와 이클립스링크가 있음
04. SQL Mapper vs ORM
SQL Mapper
- SQL만 직접 작성하면 나머지 일은 SQL Mapper가 해결
- SQL만 작성할 줄 알면 금방 배워서 사용 가능
ORM
- SQL 자체를 작성하지 않아도 되어서 개발 생산성 매우 높음
- 편리하지만 쉬운 기술은 아님
- 실무에서 사용하려면 깊이있게 학습해야 함