반응형
-
MS-SQL 프로시져를 SPRING FRAMEWORK MYBATIS 에서 호출하고 났더니. DAO에서 호출할 때 UPDATE/INSERT 메서드의 리턴값이 int이기 때문에 리턴을 받을 수가 없다...
분명히 업데이트문을 성공했음에도 항상 나오는 리턴값은 -1.
이래저래 찾아보다가 해결하고나니 뭔가 당연한걸... 왜 못했지? 라는 생각이 들더라. ㅠㅠ
어쨋든..
JAVA DAO
MYBATIS XML
MS-SQL PROCEDURE
코드 설명을 간단히 하자면.
- DAO 에서 MYBATIS 의 UPDATE 문을 콜한다. 이때 바로 리턴하지 않는다.
- MYBATIS 에는 OUT PARAM 을 잡아준다. 당연하겠지만 in/out parameter는 ParameterType 에있는 vo 객체에 set/get 으로 선언되어있어야한다.
- PROCEDURE 에서는 resultValue 값을 OUTPUT 타입으로 선언해주고, SELECT 문 또는 SET을 이용해 RETUEN VALUE를 SET을 해주면 된다.
- 다시 DAO 에서는 INPUT PARAM으로 넘겼던 vo 객체 안의 resultValue 를 get 해오면 값이 들어가있는것을 확인 할 수 있다.
이상.
-
공감버튼을 누르는것은 돈이 들지 않습니다. 한 번씩 꾹! 클릭! 부탁드려요.
반응형
'개발관련 > SQL' 카테고리의 다른 글
DBeaver UTF-8 설정, 한글깨짐 해결하기 (1) | 2020.08.14 |
---|