Mybatis调用存储过程返回多个结果集

数据库用的是SqlServer2008

图片为数据库执行存储过程返回的数据

Mybatis调用存储过程返回结果集

配置文件

<resultMap type="Integer" id="count"><result column="RecordCount" jdbcType="INTEGER" javaType="Integer" /></resultMap><resultMap type="OrderForm" id="orders"><result column="OrderId" property="id" jdbcType="VARCHAR" javaType="String"/></resultMap><select id="getOrders" statementType="CALLABLE" parameterType="Map" resultMap="count,orders" > {call Page_Up_Get_OrderState(#{id,mode=IN,jdbcType=VARCHAR})} </select>

需要注意的地方 statementType="CALLABLE" 不能少resultMap="count,orders" 这里返回多个结果集,如果有更多可以继续加

Dao层的接口

public List<List<?>> getOrders(Map<String, Object> map);

Service层调用

Map<String,Object> map=new HashMap<String, Object>();map.put("id", "22333"); //取得返回的结果集List<List<?>> results = orderDao.getOrders(map); //第一条结果集 总数量 System.out.println(((List<Integer>)results.get(0)).get(0)); //第二条订单列表 System.out.println((List<OrderForm>)results.get(1));

,不是每个人都一定快乐,不是每种痛都一定要述说。

Mybatis调用存储过程返回多个结果集

相关文章:

你感兴趣的文章:

标签云: