-
mybatis中用注解如何处理存储过程返回的多个结果集?5
mybatis中用注解如何处理存储过程返回的多个结果集?我调用一个存储过程,但这个存储过程里又调用多个存储过程,所以会返回多个有多条记录的多个结果集?用mybatis如何得到这些结果集呢?用注解如何得到,如果注解不能处理?其它方式如何处理?谢谢!2012年1月18日 11:22
1个答案 按时间排序 按投票排序
-
用xml 配置文件吧
给个列子 你就懂了
sql代码:create procedure sptest.getnamesanditems() reads sql data dynamic result sets 2 BEGIN ATOMIC declare cur1 cursor for select * from sptest.names; declare cur2 cursor for select * from sptest.items; open cur1; open cur2; END go
<resultMap type="org.apache.ibatis.submitted.sptests.Name" id="nameResult"> <result column="ID" property="id"/> <result column="FIRST_NAME" property="firstName"/> <result column="LAST_NAME" property="lastName"/> </resultMap> <resultMap type="org.apache.ibatis.submitted.sptests.Item" id="itemResult"> <result column="ID" property="id"/> <result column="ITEM" property="item"/> </resultMap> <select id="getNamesAndItems" statementType="CALLABLE" resultMap="nameResult,itemResult"> {call sptest.getnamesanditems()} </select>
@Test public void testGetNamesAndItems() throws SQLException { SqlSession sqlSession = sqlSessionFactory.openSession(); try { SPMapper spMapper = sqlSession.getMapper(SPMapper.class); List<List<?>> results = spMapper.getNamesAndItems(); assertEquals(2, results.size()); assertEquals(4, results.get(0).size()); assertEquals(3, results.get(1).size()); } finally { sqlSession.close(); } }
2012年9月03日 00:28
相关推荐
MyBatis是一个优秀的持久层框架,它支持普通的SQL查询、存储过程以及高级映射。MyBatis在消除了几乎所有的JDBC代码和参数手工设置以及结果集的检索方面有着显著的优势。MyBatis使用简单的XML或注解来配置和原始映射...
- **处理结果集**:ResultSet对象用于存储查询结果,可以遍历结果集获取数据。 此外,为了提高性能和减少重复代码,还可以考虑使用MyBatis或Hibernate等ORM框架来简化数据库操作。 #### 五、总结 通过上述内容的...
1. **MyBatis 的定义及优点**:MyBatis 是一个支持定制化 SQL、存储过程以及高级映射的优秀持久层框架。它的优点包括简化数据库操作代码、高度可定制化、支持动态 SQL 语句、以及提供 XML 或注解两种方式来配置 SQL ...
MyBatis 是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。 - **MyBatis-Plus**: 框架。MyBatis-Plus 是MyBatis的一个增强版,简化了开发工作。 - **Hibernate**: 框架。Hibernate 是一款全表映射的...
Struts2是一个强大的Java web应用程序框架,它基于MVC(Model-View-Controller)设计模式,为开发者提供了构建可维护性、可扩展性良好的企业级应用的解决方案。MAX的Struts2教程是一份专为初学者设计的资源,旨在...
当多个数据库操作需要作为一个单元执行时,我们可以将其标记为事务性。 此外,为了进行更高级的数据库操作,如复杂查询,我们可以利用Spring Data JPA或MyBatis等持久层框架,它们提供了更强大的功能和更高的抽象...
本文将详细讲解如何在Spring Boot中配置多个数据源,以及结合MyBatis进行数据操作。 首先,我们要明白什么是数据源(DataSource)。数据源是Java中用于存储数据库连接的信息,它是JDBC的一部分,负责管理与数据库的...
3. JDBC操作:使用JDBC进行数据库连接、创建Statement或PreparedStatement对象来执行SQL语句,以及处理结果集。在愉景湾时间表项目中,可能需要编写SQL查询来获取特定时间、线路的时刻表信息。 4. ORM框架:如果...
- **MyBatis中用到了哪些设计模式**:工厂模式、代理模式、装饰者模式等。 - **项目中使用的哪些设计模式**:根据具体项目需求而定。 - **常用开源框架中设计模式使用分析**:分析Spring、Hibernate等框架的设计...
MinorGC 的过程(复制->清空->互换) ....................................................................................... 24 1:eden、servicorFrom 复制到 ServicorTo,年龄+1.................................