selectKey 조회 시 한 건만 가능했던 것이 MyBatis 3.2.6 버전부터는 multiple select key 가 지원되었다.
모르고 있었던 기능인데 회사 동료로부터 알게 되었다.
Provides some new features:
- Caches nested selects
- Lazy loading can be enabled only for specific relations
- Supports returning multiple fields in a select key
- Some other minor improvements
아래와 같이 쿼리를 만들고 테스트를 해보니 잘 동작한다. 실제 업무에서 사용해 보지는 않았지만 언젠간 필요할 날이 있겠지.
<insert id="insertUserTest" parameterType="adminUser">
<selectKey keyProperty="userId,userName" resultType="hashmap" order="BEFORE">
SELECT 'key1' as userId, 'key2' as userName FROM DUAL
</selectKey>
INSERT INTO USERS
(
USER_ID
, NAME
, PASSWORD
, AGE
) VALUES
(
#{userId}
, #{userName}
, #{password}
, #{age}
)
</insert>
'프로그래밍' 카테고리의 다른 글
Spring RestTemplate 사용 시 HTTP request, response 로그 남기기 (0) | 2015.10.16 |
---|---|
문자열 인코딩에 대한 정리 (0) | 2015.08.19 |
Servlet의 request, response와 JSP의 request, response는 서로 다른 객체 (0) | 2015.07.23 |
SimpleDateFormat 쓰레드 세이프 하지 않음 (0) | 2015.07.02 |
iframe사이트와 parent사이트간 메세지 전송 방법 (서로 도메인이 다른 경우) (0) | 2015.05.21 |
HTTP request 요청 시 Content-Type의 중요성 (6) | 2015.03.09 |
@InitBinder를 이용한 사용자 로그인 정보 @ModelAttribute 객체에 저장하기 (0) | 2015.03.04 |
@Async 사용 시 spring security 세션 정보 추출 주의사항 (0) | 2015.03.04 |