工作遇到Mybatis调用一个查询页面的存储时候,需要把条数带出来,这样就是返回两个集的结果。解决方法是在Mapper. 写resultMap 定义两个类,然后在service方法里在通过获取第0个 和第一个list 分别获取到返回的两个集合。
代码如下:
mapper.xml
<select id="searchZyreg" statementType="CALLABLE" resultMap="countMap,zyregMap">
<![CDATA[
{call java_p_bindadm_zyreg(#{beginDate},#{endDate},
#{cdepcode},#{sbusername},#{username},
#{pager.pageSize},#{pager.currentPage},#{pager.firstResult})}
]]>
</select>
dao:
public List<List<?>> searchZyreg(ZyregSearchModel zyregSearchModel);
serviceImpl:
List<List<?>> results = zyregDAO.searchZyreg(zyregSearchModel);
List<Zyreg> records = (List<Zyreg>) results.get(1);
Count count = new Count();
count = ((List<Count>) results.get(0)).get(0);