本文主要是介绍ibatis如何返回存储过程中的输出参数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
ibatis会经常调用存储过程,有的有返回值有的是输出参数,下面是带输出参数的存储过程调用:
java代码:
HashMap<String,Object> paramMap = new HashMap<String,Object>(); paramMap.put("UGName", "01");paramMap.put("UName", "fff"); sqlMapClient.queryForObject("test.getpro", paramMap);System.out.println("===="+paramMap.get("TP"));
xml代码:
<parameterMap class="map" id="swapParameters"> <parameter property="UGName" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/> <parameter property="UName" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/> <parameter property="TP" javaType="java.lang.String" jdbcType="VARCHAR" mode="OUT"/></parameterMap><procedure id="test.getpro" parameterMap="swapParameters">{CALL Proc_JDBCparamTest(?,?,?)}</procedure>parameterMap里面参数的顺序要和问号的顺序一致存储过程:
ALTER PROCEDURE [dbo].[Proc_JDBCparamTest]
(
@UGName varchar,–代理账号
@UName varchar,–姓名
@TP varchar OUTPUT –提示内容
)
WITH EXECUTE AS CALLER
AS
BEGIN
declare @time [datetime];
set @time=GETDATE();
end
begin
insert into TabjdbcTest(UGName,UName,Time)
values(@UGName,@UName,@time)
set @TP=’存储过程返回结果’;
end
“`
如果存储过程有return值。那莫 {CALL ?=Proc_JDBCparamTest(?,?,?)},参数要和问号一致
这篇关于ibatis如何返回存储过程中的输出参数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!