DB : 오라클
프레임워크 : 전자정부 프레임워크 (java+spring+mybatis 등등)
보통은 select문을 써서 원하는 값을 가져오곤하는데 다른사람이 작성한 프로시져로 값을 받아와야하는 상황이 생겼다. 우선 sqlquery맵부터 작성해보자
sqlmap.xml
inParam01, inParam02 두 값을 던져서 outParam01, outParam02, outParam03라는 값을 받고 싶어하는 단순한 프로시져이다.
그럼 Controller를 작성해보자. (Service와 DAO는 생략함)
testController.java
여기까지 하고 실행했을 때 NullpointException이 난다.
왜일까?.....왜일까....왜일까...
분명 result로 받았는데 왜 resultVo는 null일까...
그것은 바로 return이 resultVo로 오는게 아니라 parameter로 넘겼던 vo에 담기는 것이기 때문이었다. (왜 그런지는 다음에...)
자 이제 제대로된 소스를 작성해보자
sqlmap.xml
testController.java
sqlmap.xml에 있던 resultType을 삭제했다. 필요없으니까.
testController에서는 resultVo로 받는 것이 아니라 그냥 vo객체를 출력한다. testService.getValues(vo);를 호출함으로해서 vo에 값이 이미 담겼으니까.
'JAVA+Mybatis' 카테고리의 다른 글
mybatis에서 foreach문 쓰기 두 번째 (0) | 2019.09.03 |
---|---|
javax.el.PropertyNotFoundException (0) | 2015.11.20 |
Mybatis 조건문에서 String형을 썼는데 NumberFormatException이 난다면? (0) | 2015.10.02 |
mybatis에서 foreach문 쓰기 (0) | 2015.06.19 |