myBatis - Software Framework.

framework 란, 복잡한 문제를 해결하거나 서술하는 데 사용되는 기본 개념 구조를 말한다. 

myBatis는 그중에서도 ORM으로 분류되는데 ORM은 Object Relational Mapping의 약자로써 오브젝트와 관계형 데이터벵크의 데이터를 자동으로 매핑해주는 것으로 이해

 

 

1. 특징

 

(1)   쿼리문, 예외처리, 트랙잭션 관리들을 XM 형식으로 관리. XM은 확장자를 말한다. 

(2)   쉽고, 간단하고, 의존성 줄이기라는 세가지 목표를 갖음.

       sql문과 자바 코드 분리하여 자바 개발하는 쿼리문을 신경쓰지 않아도 된다.

(3)   SQL를 자바코드와 분리, SQL 문 수정이 있을때마다 자바를 변경/컴파일 하지 않아도 된다.

 

2. 설치

 

(1)   https://blog.mybatis.org 

 

The MyBatis Blog

A blog about the the MyBatis data mapper framework.

blog.mybatis.org

(2)   product -> 3.5.7 (필요한 버전) -> mybatis 3.5.7 download -> java_ee (필요한 폴더에 압축 풀기)

(3)   압축 해제한 폴더에 보면 파일 4가지가 들어있다. (License, mybatis, mybatis jarfile, notice) -> jarFile만 사용

(4)   사용 방법 :

eclipse에 자바 프로젝트 open -> lib파일을 만들어준다 -> ojdbc, jar, mybatis 세 개 파일을 넣어준다. 

-> 넣은 파일 세가지 스크롤해서  마우스 우클릭, Build path 설정해준다 ->reference libraries 생성된 것 보이면 설정완료

 

 

3. myBatis 작동 순서

UserMain -> UserService -> UserInsertService -> UserServie ->         userDAO / MVC 처럼 servlet을 거치지 않는다.

 

UserInsert Service -> userDAO ->userMapper.xml로 myBatis가 연결되는 모습

 

4. myBatis 환경설정 

 

mybatis-config.xml

 

(1) Connection Pool

=> 서버에 미리 Connection 만들어 놓는 것. 구동시 마다 켜지 않아도 되기 떄문에 시간적인 면에서 효율적이다.

=> driver, username, password 등 jsp header에 일반적으로 기입되었던 정보들을 의미함

 

(2) mapper.xml (sql) 정보를 포함하고 있어야 한다.

(3) 별칭 필요 / 이름이 너무 길다면 짧게 만들 수 있다.

(4) 메모리의 크기를 조정할 수 있다.

 

 

5. myBatis 구조 

(1) myBatis에 접근하기 위해선 sqlSession 객체가 필요하다

(2) SqlSessionFactory를 통해 sqlSession를 생성한다. => 일반적으로는 DAO 에서 sqlSession을 생성해주면 된다.

 

6. 데이터를 꺼내오는 과정

 

(1) dataSource를 통해서 data들을 꺼내온다.

dataSource는 은행 직원이라고 생각하면된다. 직접 DB에 접근은 못하지만 간접적으로, dataSource에 요청되고

dataSource가 DB접근후 데이터를 꺼내온다.

 

7. myBatis Mapper Interface 

- 를 통해서 DB접근

basic structure below

 

'Database > myBatis' 카테고리의 다른 글

myBatisTest / drill  (0) 2022.05.26

+ Recent posts