-- INDEX --
1. Mapper 파일이란? |
2. 실행 방식 체크 |
3. 생성 경로 체크 |
4. Mybatis와 매핑하기 |
5. Mapper파일 생성하기 |
6. 쿼리 작성 방법 |
7. 쿼리 작성해보기 |
DB에 사용되는 쿼리문 담겨있는 xml파일 |
Mybatis와 파일연결 dao레이어에서 매퍼파일 호출 |
최상단경로 폴더 하위에 생성 |
<mappers> <mapper resource =""> |
공홈참조 namesapce id |
객체 -#{필드} 변수 -#{변수명} 맵 -#{key} |
<insert id=""> <select id=""> |
1. Mapper 파일이란?
- Mybatis ㅡ config.xml 파일에 있는 <mappers> 태그 설정 ㅡ 안에 넣어 줄 <mapper> 파일
- DB에 사용되는 쿼리문들이 담겨있는 xml파일
2. 실행 방식 체크
- mybatis [ 설정.xml파일 ]에서 - 쿼리문 모아놓은 [ 매퍼.xml ]파일 연결해 놓으면
- [ dao레이어 ]에서 쿼리문 실행시 mybatis와 연결된 [ 매퍼.xml ] 파일 찾아간다.
- 정확히는 [ 매퍼 파일의 namespace ]와 [ 쿼리문의 id ] 식별자를 찾아가서 실행한다.
3. 파일 생성 경로 체크
- 최상단 SourceFolder인 - resources 폴더 하위에 작성
- resources / mapper / member-mapper.xml 경로로 만들어 주었다.
4. 매퍼.xml 파일과 설정.xml 연결하기
- 이 연결은 mybatis 가 매퍼파일.xml 인식하도록 설정해주는 작업
5. 매퍼 파일 생성하기
5-1 : 매퍼파일에는 어떤 내용을 써야 하나 공식문서 참조
1 - xml파일이다.
2 - 타입은 매퍼파일이고 – .dtd 이 파일을 참조했다
3 - <mapper> 태그 안에 insert / select 등 태그를 이용해서 sql 작성할 것이다.
5-2 : < mapper > 의 namespace 부여하기
- dao에서 해당 매퍼 파일을 호출할 때 사용
5-3 : sql 태그의 id 부여하기
- 해당 매퍼 파일 안에 - 존재하는 sql문을 찾는 식별자
6 : 쿼리문 작성 방법
- DAO에서 쿼리문 호출 시 같이 전달해주는 애들은
- SQL 구문 완성하라고 넘겨주는 것이다. [ 객체, 변수, map 등 ]
- 전달받은 데이터 타입에 맞춰서 쿼리문의 [ ? ] 채워서 완성해주면된다.
6-1 : 객체를 전달 받은 경우
- 객체를 전달받은 경우 : #{ 필드명 } 해주면
- Mybatis가 전달받은 객체를 인식하고
- 해당 객체의 필드명의 getter 실행해서 값을 자동으로 넣어준다.
6-2 : 전달받은 데이터 타입에 맞춰서 쿼리문 완성해주기
- 객체를 전달받았으면 ㅡ # { 필드명 }
- 변수를 전달받았으면 ㅡ #{ 변수명 }
- map을 전달받았으면 ㅡ #{ key값 }
변수가 전달되는 경우에는 변수명 아무거나 사용해도 잘 전달된다.
(어차피 1개 전달된거라서)
7. 쿼리문 작성해보기
7-1 : < insert 쿼리 > 작성해보기
- 원래는 parameterType을 지정해 주어야 했지만 -
- 요즘 버전에서는 생략해도 Mybatis가 자동으로 인식해 주어서 잘 작동한다.
# 요즘 버전으로는 – Mybatis가 똑똑해져서 parameterType 안 쓰고 사용해도 작동한다.
dml 애들은 실행결과가 int 로 나오니 returnType 지정 필요 없다..
7-2 : <select 쿼리 > 작성해보기
- 파라미터 타입까지는 똑같은데
- DQL 은 반환 값이 있기 때문에 리턴 타입 지정해주어야 한다.
- [ resultType ] 또는 [ resultMap ]
- 2가지 중에 한 가지 사용해서지정해주어야 한다.
'Java 기반 클라우드 융합 개발자 과정 - KH 정보교육원 > 플러스 알파' 카테고리의 다른 글
[ Spring ] STS 설치하기 (0) | 2022.09.08 |
---|---|
[ Mybatis ] - 새로운 워크시트에서 작업 환경 설정하기 (0) | 2022.09.05 |
[ Mybatis ] - 커넥션 풀 Connection pool (0) | 2022.09.03 |
[ Mybatis ] - Mybatis 라이브러리 jar 파일 설치 및 서버와 연결하기 (0) | 2022.09.02 |
[ JSP ] .jsp 파일에서 오늘 날짜 표시하기 (0) | 2022.07.29 |