Here is how I do it:
In my mapper (xml) I have a mapper for a POJO that is used for the
procedure call
[code]
<parameterMap id="ratioParameters"
type="esos.shared.data.account.RatioParam">
<parameter javaType="java.lang.Object" jdbcType="INTEGER" mode="OUT"
property="RC" />
<parameter javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"
property="ratio.ratioId" />
<parameter javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"
property="dealerCodes" />
<parameter javaType="esos.shared.data.mybatis.MonthlyTotal$DataSet"
jdbcType="VARCHAR" mode="IN" property="dataSet" />
<parameter javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"
property="resultType" />
<parameter javaType="java.lang.Integer" jdbcType="INTEGER" mode="IN"
property="actMonth" />
<parameter javaType="java.lang.Integer" jdbcType="INTEGER" mode="IN"
property="noOfMonth" />
<parameter javaType="java.lang.Integer" jdbcType="INTEGER" mode="IN"
property="nytdmonths" />
<parameter javaType="java.lang.Integer" jdbcType="INTEGER" mode="IN"
property="debugLevel" />
<parameter javaType="java.math.BigDecimal" jdbcType="DECIMAL"
mode="OUT" property="result" />
</parameterMap>
[/code]
The actual stored proc call is a update tag
[code]
<update id="evalRatio" parameterMap="ratioParameters"
statementType="CALLABLE">
{? =call evalRatioValue( ?, ?, ?, ?, ?, ?, ?, ?, ? )}
</update>
[/code]
And the java interface;
[code]
void evalRatio(RatioParam ratioParam);
[/code]
> sqlSession.getMapper(DAOMapper.class).insertGenericGovernmentBondKey(
key.getCurrency(),