2025-01-23

# MyBatis
- 객체지향 언어인 자바의 관계형 데이터베이스 프로그래밍을 좀 더
쉽게 구현할 수 있도록 도와 주는 개발 프레임워크임.
- MyBatis는 Spring과 전혀 상관없는 독립적인 프레임워크.
MyBatis는 Java에 국한된 프레임워크가 아님.
C#, Ruby 등의 언어에서도 사용이 가능함.
- MyBatis란 DAO 객체와 SQL문을 Mapping 해 주는
Persistence Framework임(SQL Mapper라고도 부름).
즉, Data Access Layer에 속하는 프레임워크임.
- 자바는 JDBC API를 제공해 주지만, 이런 JDBC를 이용하면 한 개의
클래스에 반복된 코드가 존재, 한 파일에 Java 언어와 SQL 언어가
섞여 있어서 재사용성 등이 안 좋아지는 단점이 발생함.
- MyBatis는 이러한 JDBC의 단점들을 개선했으며, 개발자가 작성한
SQL 명령어와 자바 객체를 매핑해 주는 기능을 제공하며, 기존에
사용하던 SQL 명령어를 재사용이 가능하게 해 줌.
- 자바 오브젝트와 SQL문 사이의 자동 Mapping 기능을 지원하는
ORM(Object Relational Mapping) 프레임워크임.
※ ORM이란 객체와 관계형 데이터베이스의 데이터를 자동으로
매핑(연결) 해 주는 것을 말함.
- MyBatis는 SQL을 별도의 파일로 분리해서 관리하게 해 주며,
객체와 SQL 사이의 파라미터 매핑 작업을 자동으로 해 주기 때문에
많은 인기를 얻고 있는 기술임.
- MyBatis의 특징
* 쉬운 접근성과 코드의 간결함.
* XML 형태로 서술된 JDBC 코드라고 생각해도 될 만큼 JDBC의
모든 기능을 MyBatis가 대부분 제공함.
* 복잡한 JDBC 코드를 걷어내며 깔끔한 소스 코드를 유지할 수 있음.
* 한 두 줄의 자바코드로 DB 연동을 처리를 해 줌.
* SQL 명령어를 자바 코드에서 분리하여 XML 파일로 따로 관리.
- 따라서, 독립적인 MyBatis 프레임워크를 스프링과 연동하기 위해서는
MyBatis-Spring 모듈이 필요함.
MyBatis-Spring은 MyBatis를 Spring Framework에 녹여
더 쉽게 사용할 수 있게 하기 위한 연동 모듈임.
# MyBatis 설정 작업
- 스프링과 MyBatis를 연동하기 위한 라이브러리 설정 - pom.xml
* MyBatis 프레임워크 라이브러리 추가.
* MyBatis-Spring 라이브러리 추가.
* Spring-JDBC 라이브러리 추가.
* 데이터베이스와 연결을 담당하는 DataSource 객체 설정.'Spring, Boot > 기초 내용 정리' 카테고리의 다른 글
| Spring(MyBatis)_02 (0) | 2025.02.05 |
|---|---|
| Spring(MyBatis)_01 (0) | 2025.02.05 |
| Spring(JDBC)_01 (1) | 2025.01.22 |
| Spring(JDBC)_00 (1) | 2025.01.22 |
| Spring(MVC)_03_01 (0) | 2025.01.22 |