| 항목 | 설명 |
|---|---|
| SQL 주도 개발 | 개발자가 SQL을 직접 작성 (JPA처럼 SQL 자동 생성 X) |
| 객체 매핑 지원 | SQL 결과를 Java 객체와 매핑해줌 (ResultMap, TypeHandler 등 활용) |
| 유연한 설정 | XML 기반 설정 또는 Java Config 방식 둘 다 지원 |
| 동적 SQL 지원 | <if>, <choose>, <foreach> 등으로 조건문과 반복문 처리 가능 |
| 간단한 학습 곡선 | SQL에 익숙한 개발자에게는 진입 장벽이 낮음 |
| 가벼움 | 런타임 복잡도나 추상화가 적어 성능 이슈가 적음 |
selectOne(), selectList(), insert(), update(), delete() 등의 메서드 제공<select>, <insert>, <update>, <delete> 등의 태그로 구성| 항목 | 설명 |
|---|---|
| SQL 인젝션 | ${} 사용 시 주의 필요 |
| 유지보수 | SQL이 분산되면 프로젝트 규모가 커질수록 관리 어려움 |
| 객체 관계 자동화 한계 | JPA만큼의 연관관계 매핑 자동화 기능은 없음 |