728x90
insert와 동시에 select를 해야 하는 경우가 종종 있다.
그런 경우엔 <selectKey>를 사용해줘야한다.
<insert id="insertSelectKey">
<selectKey keyProperty="boardNo" order="BEFORE" resultType="int">
select seq_board.nextval from dual
</selectKey>
insert
into
tbl_board
(
boardNo,
boardTitle,
baordContent,
boardWriter
)
values
(
#{boardNo},
#{boardTitle},
#{baordContent},
#{boardWriter}
)
</insert>
keyProperty | 다음 쿼리에 대입될 변수명 == selectKey구문의 결과가 세팅될 대상 프로퍼티 |
resultType | 결과의 타입 |
order | 실행시점 ( BEFORE 또는 AFTEER ) BEFORE : 키를 먼저 조회하고 그 값을 keyProperty에 세팅 한 후 insert 실행 AFTER : insert를 실행 후 selectKey 구문 실행 |
keyColumn | 리턴되는 결과셋의 컬럼명은 프로퍼티와 일치. 콤마를 사용하여 구분 |
'Spring' 카테고리의 다른 글
[Spring] @RequestBody / @ResponseBody 차이 (0) | 2021.05.28 |
---|---|
[JXLS] 엑셀 다운로드 (3) | 2021.05.06 |
[File] 프로젝트 외부에 이미지 불러오기 (3) | 2021.04.22 |
[java] mybatis foreach 다중 insert (0) | 2021.04.06 |
[springloaded] java file 수정 후 tomcat 재시작 없이 반영 : 재로딩 시스템 (0) | 2021.03.23 |