본문 바로가기
개발/Framework || Lib

Oracle cursor 접근 방법

by 백아절현 2009. 10. 7.

처 : http://jrusi.tistory.com/category/개발자의길/Ibatis%20FrameWorks

< ?xml ... ?>
< !DOCTYPE ... dtd."> 
< sqlMap>
... -- 단일 CURSOR --
< parameterMap id="paramForSingleCursor" class="map">
< parameter property="paramForInMode" jdbcType="int" javaType="java.lang.Integer" mode="IN" />
< parameter property="paramForOutMode" jdbcType="ORACLECURSOR" mode="OUT" />
< /parameterMap>
-- 다중 CURSOR -- 
< parameterMap id="paramForMultipleCursor" class="map"> 
< parameter property="paramForInMode" jdbcType="int" javaType="java.lang.Integer" mode="IN" />
< parameter property="paramForOutMode1" jdbcType="ORACLECURSOR" mode="OUT" resultMap="..." />
< parameter property="paramForOutMode2" jdbcType="ORACLECURSOR" mode="OUT" resultMap="..." />
< /parameterMap> 
< procedure id="procForSingleCursor"

 parameterMap="paramForSingleCursor" ...>
{ call ...SingleResultSet(?, ?) }
< /procedure> 
< procedure id="procForMultipleCursor" parameterMap="paramForMultipleCursor" ...>
{ call ...MultipleResultSet(?, ?, ?) } 
< /procedure>
< /sqlMap>

-- 자바 호출 --
-- 공통 -- 
Map map = new HashMap(); 
map.put("paramForInMode", new Integer(넘겨줄 id));
-- 단일 CURSOR --
List list = sqlMapClient.queryForList("procForSingleCursor", map);
-- 다중 CURSOR -- 
sqlMapClient.queryForObject("procForMultipleCursor", map);
map.get("paramForOutMode1"); 
map.get("paramForOutMode2"); 
여기에서 resultMap 요소는 생략되었고,
파라미터 맵에서 파라미터 개수는 Stored Procedure에서 사용하는 것과 동일한 개수를 가짐

'개발 > Framework || Lib' 카테고리의 다른 글

jackcess 사용하기 (JAVA)  (0) 2018.12.05
IBATIS RESUTL 에러  (0) 2010.07.07
어노테이션에서 인터셉터사용하기  (0) 2009.01.29
iBatis like #변수# || '%' 사용시 주의사항  (0) 2008.09.18
Spring+iBatis 트랜잭션  (0) 2008.09.09

댓글