반응형
츄르사려고 코딩하는집사입니다.
아래의 코드처럼, parameterMap 태그 안에 여러 개의 parameter property와 javaType, jdbcType, mode를 정의할 수 있다. 여기서, procedure를 통해 데이터를 리턴받고 싶을 때에는 이 mode가 IN이냐 OUT이냐에 따라 받을 수 있다. 아래처럼, mode가 OUT일 경우에 프로시저를 통해 DataMap으로 return을 받을 수 있다.
<parameterMap id="TEST" type="com.common.bean.DataMap">
<parameter property="A" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
<parameter property="B" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
<parameter property="C" javaType="java.lang.Integer" jdbcType="NUMERIC" mode="IN"/>
<parameter property="D" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
<parameter property="E" javaType="java.lang.String" jdbcType="VARCHAR" mode="OUT"/>
<parameter property="F" javaType="java.lang.String" jdbcType="VARCHAR" mode="OUT"/>
</parameterMap>
아래의 xml 태그에서 insertData를 요청하면 statementType이 CALLABLE인 경우 mode가 OUT인 E와 F을 프로시저에서 어떤 값을 리턴받을 수 있다.
<update id="insertData" statementType="CALLABLE" parameterType="com.common.bean.DataMap">
<![CDATA[
{ call DataInsert(#{A,mode=IN,jdbcType=VARCHAR}
, #{B,mode=IN,jdbcType=VARCHAR}
, #{C,mode=IN,jdbcType=NUMERIC}
, #{D,mode=IN,jdbcType=VARCHAR}
, #{E,mode=OUT,jdbcType=VARCHAR}
, #{F,mode=OUT,jdbcType=VARCHAR}
) }
]]>
</update>
반응형
'IT > MyBatis' 카테고리의 다른 글
IBatis를 MyBatis로 변환하는 방법 정리 (0) | 2022.11.17 |
---|
최근댓글