MyBatis调用存储过程需三步:声明statementType="CALLABLE"、用resultSets+resultMap映射多结果集、Java层接收List<List<?>>并按序强转。

MyBatis 处理存储过程与复杂结果集映射,核心在于三件事:正确声明调用方式、精准配置多结果映射规则、在 Java 层合理接收和拆分数据。不是所有数据库都支持多结果集,SQL Server 和 MySQL(5.7+)原生支持,Oracle 需配合 REF CURSOR,PostgreSQL 则需借助函数返回 SETOF 类型——但 MyBatis 对这几种场景都有适配方案。
必须设 statementType="CALLABLE"
MyBatis 默认把 `