MyBatis调用存储过程,含有返回结果集、return参数和output参数
来源:互联网 发布:网络新媒体就业前景 编辑:程序博客网 时间:2024/06/13 04:01
存储过程:
use base_passport
Go
create proc yhj_test
@input_a int,
@input_b int,
@output_c int out
as
begin
select * from config.city;
set @output_c = @input_a*@input_b;
return @input_a+@input_b;
end
Mybats配置:
<resultMap type="Java.util.HashMap" id="resultMap">
<result column="city_key" property="cityKey"javaType="java.lang.Integer" jdbcType="INTEGER"/>
<result column="province_key" property="provinceKey"javaType="java.lang.Integer" jdbcType="INTEGER"/>
<result column="city_name" property="cityName"javaType="java.lang.String" jdbcType="VARCHAR"/>
</resultMap>
<select id="testByProc" statementType="CALLABLE"parameterType="java.util.HashMap" resultMap="resultMap">
<![CDATA[
{#{d,mode=OUT,jdbcType=INTEGER}=call dbo.yhj_test(
#{a,mode=IN,jdbcType=INTEGER},
#{b,mode=IN,jdbcType=INTEGER},
#{c,mode=OUT,jdbcType=INTEGER}
)}
]]>
</select>
Java代码
Map<String, Object> paramMap = new HashMap<String, Object>();
paramMap.put("a", 2);
paramMap.put("b", 3);
List<City> citys = (List<City>) getTemplate().selectList(getNameSpaceAndMethod("testByProc"), paramMap);
return citys;
通过以上代码我们即可获取对应的结果集,return参数和output参数。其中return参数和output参数放在传入的paramMap中,运行结果如下:
c是存储过程的output参数,而d为return参数。
需要注意的事项:
1、 存储过程的参数和名称无关,只和顺序有关系
2、 存储过程的output参数,只能通过传入的map获取
3、 存储过程返回的结果集可直接用返回的map接收
4、 存储过程的return结果需要使用?=call procName(?,?)的第一个参数接收,需要指定对应的mode为OUT类型
5、 存储过程对应的数据类型为枚举类型,需要使用大写,如VARCHAR
- MyBatis调用存储过程,含有返回结果集、return参数和output参数
- MyBatis调用存储过程,含有返回结果集、return参数和output参数 .
- MyBatis调用存储过程,含有返回结果集、return参数和output参数
- MyBatis调用存储过程,含有返回结果集、return参数和output参数
- MyBatis调用存储过程,含有返回结果集、return参数和output参数
- MyBatis调用存储过程,含有返回结果集、return参数和output参数
- MyBatis调用存储过程,含有返回结果集、return参数和output参数
- MyBatis调用带有返回结果、output参数的存储过程上与ibatis的区别
- asp.net 调用存储过程返回参数和output参数
- mybatis调用orcale存储过程-传入多个参数返回结果集
- C#获取存储过程的Return返回值和Output输出参数值
- C#获取存储过程的Return返回值和Output输出参数值
- C#获取存储过程的Return返回值和Output输出参数值
- C#获取存储过程的Return返回值和Output输出参数值
- C#获取存储过程的Return返回值和Output输出参数值
- C#获取存储过程的Return返回值和Output输出参数值
- C#获取存储过程的Return返回值和Output输出参数值
- C#获取存储过程的Return返回值和Output输出参数值
- 从关键类认识 Spring security
- JS相关网站
- 机器学习前导---IBM讲座笔记
- 关于521
- 在Quartus II 13.1里RTL视图问题
- MyBatis调用存储过程,含有返回结果集、return参数和output参数
- 最长上升连续子序列
- Android开发准备——Java和Android Studio环境搭建
- JZOJ 4.15 1666——【AHOI2009】飞行棋
- JSP入门_TWO
- wsdl配置文件
- WAV文件格式分析
- 一些常见的问题错误及解决方式
- C++<set>集合