(1) <resultMap> 태그를 이용한 VO 연결
<resultMap type="VO클래스명" id="별칭">
<id property="PK변수명" column="PK컬럼명"/>
<result property="일반변수명" column="일반컬럼명"/>
.....
<collection property="컬렉션변수명" column="컬럼명"
javaType="java.util.ArrayList" ofType="VO클래스명" select="selectBoardImageList" >
</resultMap>
%% <collection> 태그 : 서브쿼리 형식으로 데이터를 가지고오고 싶을때 사용하며 자바 컬렉션 객체에 담아준다
(2) ![CDATA[ SQL문 ] ]
내부에 작성된 태그 문자를 일반 문자 자체로 인식하게 해준다
ex) SQL문 안에 < 같은 기호를 사용할때 태그로 인식되는 등의 문제 방지
(3) <selectKey>태그 : insert, update 시 사용된 시퀀스 값을 반환하는 태그
<selectKey order="BEFORE" resultType="_int" keyProperty="boardNo">
SELECT SEQ_BOARD_NO.NEXTVAL FROM DUAL
</selectKey>
-keyProperty : selectKey구문의 결과가 셋팅될 대상 프로퍼티
-keyColumn : 리턴되는 결과셋의 컬럼명은 프로퍼티에 일치한다.
-order : BEFORE 또는 AFTER로 셋팅할 수 있다.
BEFORE( 키를 먼저 조회하고 셋팅 후 실행)
AFTER(실행을 먼저 한 뒤 키를 반환)
(4) 동적 SQL : 마이바티스의 핵심 기능으로 SQL 수행 중 조건 ,반복 ,특정 구문 추가 등을 동적으로 수행할 수 있음
<forEach> 태그
<foreach collection="list" item="img"
open="(" close=") A" separator=" UNION ALL ">
</foreach>
- collection : 반복 접근할 컬렉션 형태의 파라미터
- item : collection에서 반복 시 마다 순차적으로 하나씩 접근한 요소
- index : 현재 반복 인덱스
- open : forEach 시작 전 추가할 구문
- close : forEach 종료 후 추가할 구문
- separator : 반복 시 마다 SQL 사이에 추가할 구분자
<if> 문 또는 <choose> 태그
<if test="sv != null">
<bind name="val" value="'%'+sv+'%'" /> --반복되는 문장 정의
<choose>
<when test="sk == 'title'">
</when>
</choose>
</if>
'개발자로 업그레이드 되자 > SpringMVC' 카테고리의 다른 글
Spring - AOP (0) | 2022.01.19 |
---|---|
Spring 스케줄러 (0) | 2022.01.14 |
스프링 MVC - 이미지 업로드 / 파라미터 사용 DB삽입 (0) | 2022.01.11 |
스프링MVC - 트랜잭션 및 예외처리 (0) | 2022.01.06 |
스프링MVC - Mybatis (0) | 2022.01.06 |