我无法从程序中获取值。它在表上执行插入并且必须返回代码。数据插入正确,但返回的代码始终为null。
<parameterMap id="callParameters" type="Call" >
<parameter property="client" jdbcType="VARCHAR" mode="IN"/>
<parameter property="originalAnalyst" jdbcType="VARCHAR" mode="IN"/>
<parameter property="currentAnalyst" jdbcType="VARCHAR" mode="IN"/>
<parameter property="analystType" jdbcType="INTEGER" mode="IN"/>
<parameter property="category" jdbcType="VARCHAR" mode="IN"/>
<parameter property="product" jdbcType="VARCHAR" mode="IN"/>
<parameter property="process" jdbcType="VARCHAR" mode="IN"/>
<parameter property="problem" jdbcType="VARCHAR" mode="IN"/>
<parameter property="priority" jdbcType="VARCHAR" mode="IN"/>
<parameter property="status" jdbcType="VARCHAR" mode="IN"/>
<parameter property="serviceType" jdbcType="VARCHAR" mode="IN"/>
<parameter property="abstract" jdbcType="VARCHAR" mode="IN" />
<parameter property="descript" jdbcType="VARCHAR" mode="IN"/>
<parameter property="nullField" jdbcType="VARCHAR" mode="IN"/>
<parameter property="returnField" jdbcType="VARCHAR" mode="OUT"/>
<parameter property="callNumber" jdbcType="VARCHAR" mode="OUT" />
<parameter property="currentDate" jdbcType="TIMESTAMP" mode="IN" />
<parameter property="constant1" jdbcType="INTEGER" mode="IN"/>
<parameter property="constant0" jdbcType="INTEGER" mode="IN"/>
</parameterMap>
<select id="open-call" parameterMap="callParameters" resultType="Call" statementType="CALLABLE">
{call ADMAHD30.spr_AutoReq(#{returnField},#{constant1},#{callNumber},#{currentDate},#{client},#{originalAnalyst},#{currentAnalyst},#{analystType},#{category},#{product},#{process},#{problem},#{nullField},#{priority},#{status},#{serviceType},#{abstract},#{descript},#{nullField},#{nullField},#{nullField},#{nullField},#{nullField},#{nullField},#{nullField},#{nullField},#{nullField},#{nullField},#{nullField},#{constant0})}
</select>
所有这些属性都正确地在我的对象中。有什么不对吗?
答案 0 :(得分:0)
我在myBatis上有点生疏,但如果你期待一个String回来,为什么不是resultType“java.lang.String”?
编辑:如何使用resultMap而不是resultType(假设sp已为返回参数指定了名称):
<resultMap id="CallResultMap" type="com...Call">
<result property="callNumber" column="callNumberCol"/>
<result property="returnField" column="returnFieldCol"/>
</resultMap>
然后在resultMap中包含result参数。