第一次使用ibatis调用存储过程,且返回是不确定列数的结果集。通过网上搜集的资料,找出两种写法来解决这个问题。数据库使用的是sql server2008R2
方法一
<select id="id名,java调queryForList用到" parameterClass="java.util.HashMap" resultClass="java.util.HashMap" >
execute 存储过程名 #参数#(多个参数用逗号“,”连接)
</select>
方法二:注意?和入参的顺序要一致
<parameterMap id="传入参数map名" class="java.util.HashMap">
<parameter property="第一个参数" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
<parameter property="第二个参数" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
</parameterMap>
<procedure id="id名,java调queryForList用到" resultClass="java.util.HashMap" parameterMap="传入参数map名" >
{call 存储过程名(?,?)}
</procedure>