보뇨 다이어리

mysql procedure 리턴값 mybatis 에서 받기 본문

컴퓨터 관련/DB 정보

mysql procedure 리턴값 mybatis 에서 받기

보뇨 2018. 10. 25. 11:08
반응형

이걸 한두시간쯤 끌어먹었는데 포스트되어있는게 많이없어서 고생하실분들을 위해 포스팅함 :)


현재 운영중인 시스템은 mybatis 형식으로 받고있었음

근데 mybatis 내에 입력된 쿼리를 디비 프로시저 형태로 바꾸는 작업을 진행하고있음

그렇기때문에 부딪힌 문제가 있는데 바로 insert 시 성공결과 리턴값을 받는방법이다!!

아래 보기를 보면 여태까지 이런식으로 리턴값을 받아왔다


그리고 바꿀려는 mybatis + procedure 는 다음과 같다

 ** 위와 아래 사진들이 다른데 같은맥락이라고 생각하면됨


근데 문제는 막상 실행시키면 mybatis 에서 리턴값을 못가져옴

애초에 insert 할때 받는방법은 selectKeys 방법밖에없기때문에 어떻게할지 생각에 빠짐

그러다가 생각한게 애초에 procedure 는 함수이기때문에 굳이 mybatis 내에 insert 라는 맥락을 추가할필요가없지않나싶었음

select 태그로 바꾸고 리턴값을 resultType 에 지정된 모델클래스에 담아가기로했더니성공적으로 됨 !! 아래 사진이 그 예다


반응형