【发布时间】:2012-06-29 04:22:02
【问题描述】:
我正在将一个项目从 C# + SQL Server 移植到 Java + MySQL。我在Java + MySQL项目中使用了ibatis 3。
在旧项目中,它使用了大量的存储过程,这些存储过程返回的结果集不止1个。
我尝试使用 ibatis 寻找解决方案,并找到了这个MyBatis multiple resultsets。
James Woods 似乎使用逗号分隔的 resultMap 列表实现了它。
我尝试了他的方法并在Java中调用该方法:
1: 对象[] findCashItems(); 2:列表[] findCashItems();
然而,他们都失败了。
我只是想知道ibatis 3真的支持返回超过1个结果集的存储过程吗?
如果是这样,我们如何在 Java 中调用该方法?
非常感谢。
【问题讨论】:
-
我不知道你正在使用这个工具,但是从 SQL 的角度来看,我建议你将存储过程返回的结果打包到一个临时表中并返回 select *从临时表。这将为您提供所需的一切,而无需担心工具的功能。
-
感谢 slashmais 的回答。但是在现在移植的旧项目中,存储过程可能会返回多个结果集,每个结果集都有不同的列。所以很难将它们打包到临时表中。
标签: ibatis multiple-resultsets