0 0

ibatis调用mysql存储过程返回多个表结果集问题0

ibatis调用mysql存储过程返回多个表结果集,但是只能取到一个查询的结果

首先上存储过程代码:

 

CREATE PROCEDURE  getInfo(in rob_id INT, in name VARCHAR(50))
BEGIN
    declare my_id int DEFAULT 0;

    select * from t_rob hr where hr.id=rob_id;
    
    select * from t_rob_prize hrp where hrp.robId=rob_id;

    select id into my_id from t_rob_my where robId=rob_id and name=name LIMIT 0,1;

    select hrm.id,hrm.robId,hrm.wxNunber,hrm.exchange,hrm.createTime from t_help_rob_my hrm where hrm.id=my_id;
    
    select * from t_help_rob_help hrh where hrh.myId=my_id;
END

 ibatis配置:

 

 

<parameterMap id="robIndexParameter" class="java.util.HashMap">
        <parameter property="rob_id" jdbcType="int" javaType="java.lang.Integer" mode="IN"/>
        <parameter property="name" jdbcType="varchar" javaType="java.lang.String" mode="IN"/>
    </parameterMap>

<resultMap id="helprobInfoResultMap" class="helprobInfo">
        。。。。。。
</resultMap>

<resultMap id="helprobPrizeInfoResultMap" class="helprobPrizeInfo">
        。。。。。
    </resultMap>

<resultMap id="helprobMyInfoResultMap" class="helprobMyInfo">
        。。。。。
    </resultMap>
<resultMap id="helprobHelpInfoResultMap" class="helprobHelpInfo">
。。。。。
    </resultMap>
<!-- 总共四个resultMap -->

 存储过程调用:

 

 

<procedure id="geRobIndexInfo" parameterMap="robIndexParameter"
               resultMap="helprobInfoResultMap,helprobPrizeInfoResultMap,helprobMyInfoResultMap,helprobHelpInfoResultMap">
        {call getInfo(?,?)}
    </procedure>

调用的时候只返回helprobInfoResultMap的值,其它是三个resultMap的值没有返回

paramters.put("rob_id", robId);
paramters.put("name", name);
sqlMapClient.queryForList("RobDAO.geRobIndexInfo", paramters);

 求大神解答


问题补充:mysql版本5.5,ibatis版本是2.3.4
2014年8月09日 17:52
目前还没有答案

相关推荐

    struts+spring_ibaits+调用Mysql存储过程实现增删改查

    在本项目中,"struts+spring_ibaits+调用Mysql存储过程实现增删改查",意味着开发者利用这三个框架来处理数据库中的增、删、改、查(CRUD)操作,并通过调用MySQL的存储过程来实现这些功能。存储过程是预编译的SQL...

    ibatis与存储过程(带输出参数的应用)

    需要注意的是,虽然这里使用了`selectOne`,但实际上存储过程可能返回多个结果集或者无结果,这时可以使用`sqlSession.callableStatement()`方法,然后调用`CallableStatement`的相关方法来处理。 在实际项目中,...

    Ibatis+MySql(含对应数据库sql) 源码

    在MySql 5.2中,支持诸多高级特性,如存储过程、触发器、视图等,这些可以通过Ibatis的SQL映射文件进行调用。同时,MySql的InnoDB引擎提供事务支持,与Ibatis的事务管理无缝对接。 对于初学者,理解Ibatis的动态SQL...

    struts2+spring+ibatis+mysql

    此外,Spring还包含了数据访问、Web、测试等多个模块,能与Struts2无缝集成。 3. **Ibatis**:Ibatis是一个简单易用的SQL映射框架,它将Java代码与SQL语句分离,使得开发者可以更加灵活地操作数据库。Ibatis通过XML...

    struts2 存储过程

    总结,Struts2调用存储过程涉及数据库连接、DAO设计、Action控制和视图展示等多个环节。通过合理配置和编程,我们可以有效地利用存储过程提升应用的效率和灵活性。"Struts2_crud2.0_Procedure"示例提供了具体实现,...

    Ibatis多表查询

    这意味着每本书可以有多个作者。 **图书表 (`book`) 结构:** - `oid`: 图书ID,主键,类型为 `int(10)` - `name`: 图书名称,类型为 `varchar(50)` **用户表 (`user`) 结构:** - `id`: 用户ID,主键,类型为 `int...

    ibatis+mysql

    - **创建数据库和表**:在MySQL中创建数据库和相应的表结构,用于存储和查询数据。 - **配置Ibatis**:在SqlMapConfig.xml中配置数据库连接信息,包括URL、用户名、密码等。 - **编写Mapper接口和XML映射文件**:...

    spring+ibatis+mysql简单搭建

    在IT行业中,构建一个基于Spring、iBatis和MySQL的简单应用是常见的开发任务,尤其对于初学者来说,这是理解Web应用开发基础的好方法。本文将深入探讨如何使用这三个技术来搭建一个基本的Web应用程序。 首先,让...

    struts+spring+ibatis+mysql简单的配置实例

    在Struts中,Action类负责接收并处理HTTP请求,而后返回一个结果到视图层。配置文件`struts-config.xml`定义了Action的映射和结果路径。 Spring框架是Java企业级应用的核心,它提供了一个全面的编程和配置模型,...

    IBATIS连接多数据库参考文档

    本文档将深入探讨如何在IBATIS框架下连接和管理多个数据库,以便于在不同环境中灵活切换或同时操作多个数据源。 IBATIS是一个流行的Java和.NET平台上的数据访问层解决方案,它允许开发者编写SQL语句并与对象模型...

    使用ibatis操作大对象,mySQl数据库

    综上所述,使用iBatis操作MySQL中的大对象涉及数据库配置、表结构设计、Mapper接口和XML映射、流式处理、性能优化以及事务管理等多个方面。正确理解和运用这些知识点,能够有效地处理和管理大对象数据,确保系统的...

    ibatis实现数据的操作

    在这个过程中,Ibatis会自动处理参数绑定、结果集映射等细节,极大地提高了开发效率。同时,由于SQL语句与Java代码的分离,使得SQL的优化和维护变得更加容易。 对于MySQL数据库,Ibatis提供了很好的支持,包括对...

    ibatis 相关jar包

    - 对于复杂的业务逻辑,可以考虑使用存储过程,Ibatis也支持调用存储过程。 通过以上介绍,我们可以看到,Ibatis 相关jar包在Java Web开发中起着至关重要的作用,它为数据库操作提供了一种灵活、高效的方式。正确...

    ibatis源码

    总结起来,iBatis源码的研究涉及了数据库操作、Java持久层设计、单元测试等多个方面,结合junit和SQL Server,我们可以更深入地理解iBatis的工作原理,提升我们的开发能力。通过对源码的阅读和实践,开发者不仅能...

    ibatis用xml配置文件配置使用

    对于复杂场景,如多表联查、分页、存储过程等,你可以继续深入学习XML配置文件的高级用法,例如使用`&lt;association&gt;`, `&lt;collection&gt;`处理嵌套结果,使用`&lt;resultMap&gt;`定义复杂的映射关系等。 总的来说,iBATIS的XML...

    ibatis相关问题

    此外,Ibatis还支持存储过程的调用,这在处理复杂业务逻辑时非常有用。 在Ibatis中,数据的映射是通过ResultMap实现的,它可以映射查询结果到Java对象,处理嵌套结果集和自关联的情况。除此之外,还可以使用...

    struts+ ibatis上传下载文件

    Struts和iBatis是两种在Java Web开发中广泛应用的技术...综上所述,这个项目涵盖了Web开发中的多个核心知识点,包括前端交互、后端处理、数据库操作、安全性以及性能优化等方面,为学习者提供了一个实践性的学习平台。

    ibatis批处理

    在代码中,你可以遍历数据集合,然后逐个调用iBatis的SQL映射接口。这种方式的灵活性较高,但可能造成代码重复,且不易维护。 **2. 在配置文件中进行循环操作** 这种方式更适用于复杂的批处理场景,尤其是当涉及到...

    ibatisDemo

    5. **多参数查询**: 当需要根据多个条件进行查询时,Ibatis支持传入多个参数。这些参数可以是简单的值,也可以是复杂的对象。通过在SQL映射文件中使用定义参数集,然后在或等标签中引用。 6. **动态SQL**: Ibatis的...

Global site tag (gtag.js) - Google Analytics