MyBatis는 SQL을 직접 작성하고, 그 결과를 객체로 매핑해주는 SQL Mapper 프레임워크입니다.
“ORM이 아닌, SQL 중심 접근”
👉 SQL을 숨기지 않는다
| 구분 | MyBatis | JPA |
|---|---|---|
| 패러다임 | SQL 중심 | 객체 중심 |
| 쿼리 | 직접 작성 | 자동 생성 |
| 제어력 | 매우 높음 | 상대적으로 낮음 |
| 생산성 | 낮음 | 높음 |
| 유지보수 | SQL 의존 | 객체 의존 |
| 대규모 조회 | 강점 | 보완 필요 |
👉 둘은 경쟁 관계가 아니라 보완 관계
| 구성 | 역할 |
|---|---|
| Mapper Interface | Java 인터페이스 |
| Mapper XML | SQL 정의 |
| SqlSession | 실행 단위 |
| ResultMap | 결과 매핑 |