1. MyBatis 소개
- MyBatis는 자바 애플리케이션에서 관계형 데이터베이스에 액세스하기 위한 SQL 매퍼 프레임워크입니다.
- 기존 JDBC의 복잡성을 추상화하고, Spring의 JdbcTemplate보다 더 많은 기능을 제공합니다.
1.1 MyBatis의 주요 특징
- SQL과 자바 코드의 분리: SQL 쿼리를 XML 파일에 따로 작성하여 자바 코드와 분리
- 간결한 코드: JDBC의 반복적인 코드를 제거하고 핵심 비즈니스 로직에 집중 가능
- 강력한 동적 쿼리: 조건에 따라 SQL을 동적으로 구성하는 기능 제공
- 객체-결과 매핑: 데이터베이스 결과를 자바 객체로 쉽게 매핑
- 확장성: 플러그인 시스템을 통한 기능 확장
1.2 JdbcTemplate과 비교
JdbcTemplate에 비해 MyBatis가 갖는 가장 큰 장점:
- SQL을 XML에 편리하게 작성 가능
- 동적 쿼리를 매우 효과적으로 구현 가능
- 복잡한 객체 관계 매핑 지원
- 다양한 데이터베이스 벤더 지원