MyBatis
MyBatis는 자바 퍼시스턴스 프레임워크의 하나로 XML이나 Annotation을 사용한다.
그리고 SQL Mapper를 이용하여 자바의 객체를 SQL문과 연결하여 빠르고 편리하게 DB에 접근할 수 있게 해줍니다.
MyBatis는 소스 코드와 SQL문을 분리하여 간결성과 유지보수성이 향상되고 복잡한 쿼리나 다이나믹한 쿼리에 강합니다.
MyBatis 아키텍처
서비스에서 DAO를 호출하고 MyBatis를 사용합니다.
MyBatis를 사용하는 데이터 액세스 계층
MyBatis는 Data Access Layer에서 사용하는 프레임워크입니다..
그림과 같이 Controller에서 Service를 호출하고 Service가 DAO 계층에 있는 메소드를 호출하면 DAO에서 MyBatis를 호출합니다.
MyBatis의 주요 컴포넌트의 역할
- MyBatis 설정파일 (SqlMapConfig.xml) : 데이터베이스의 접속 주소 정보나 Mapping 파일의 경로 등의 고정된 환경정보를 설정
- SqlSession FactoryBuilder : MyBatis 설정 파일을 바탕으로 SqlSessionFactory를 생성한다.
- SqlSessionFactory : SqlSession을 생성한다.
- SqlSession : 핵심적인 역할을 하는 클래스로서 SQL실행이나 트랜잭션 관리를 실행한다.
- mapping 파일 (user.xml) : SQL문과 OR Mapping을 설정한다.
'Web > Spring' 카테고리의 다른 글
[Spring] DAO 와 DTO (0) | 2020.12.25 |
---|---|
[Spring] Spring MVC 구조 (0) | 2020.12.25 |
[Spring] DI (Dependency Injection, 의존성 주입) (0) | 2020.12.17 |
[Spring] Maven 과 Gradle (0) | 2020.12.13 |
[Spring] Spring Framework 와 Spring Boot (0) | 2020.12.13 |