mybatis调用存储过程

原创 2015年11月20日 16:58:58

mybatis调用存储过程的返回参数到底怎么传递的一直没搞清楚,不过调用可以参考一下:


首先看一下xml文件中的SQL:

  <select id="queryDeptNameByUserId" statementType="CALLABLE" parameterType="map">
    <![CDATA[
           {call queryDeptNameByUserId(
              #{userId,mode=IN,jdbcType=INTEGER},
             
 #{userDeptName,mode=OUT,jdbcType=VARCHAR}
            )}    
     ]]>
  </select>

其中statementType="CALLABLE"必须配置    参数中in out表示存储过程的输入输出参数


再看一下dao调用sql:

 String queryDeptNameByUserId(Map<String, Object> param);

关于返回值怎么传递一直没搞清楚,所以这里的String接收返回参数并不准确,你也可以用int


最后看实现类的调用并取值:

paramMap.put("userId", usb.getId());
trainingClassMapper.queryDeptNameByUserId(paramMap);
if (paramMap.get("userDeptName") == null) {
usb.setDeptName("");
}
usb.setDeptName(paramMap.get("userDeptName").toString());

最终返回值其实mybatis将返回值存入到map中去了,String中是没有值的,最终取出返回值在map中取就可以了

mybatis调用mysql存储过程

  • 2017年04月17日 17:51
  • 39KB
  • 下载

mybatis调用orclae存储过程

  • 2017年04月17日 18:00
  • 10.62MB
  • 下载

Mybatis调用PostgreSQL存储过程实现数组入参传递

关于mybatis调用postgres存储过程传递数组参数的解决方案~

mybatis调用存储过程源码

  • 2014年11月20日 20:41
  • 4.77MB
  • 下载

mybatis 调用存储过程

要求:查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 create table p_user( id int primary key auto_increment, name...
  • zxdfc
  • zxdfc
  • 2015年06月30日 14:24
  • 1628

MyBatis调用存储过程,含有返回结果集、return参数和output参数

Ibatis是我们经常使用的O/R映射框架,mybats是ibatis被Google收购后重新命名的一个工程,当然也做了大量的升级。而调用存储过程也是一次额C/S架构模式下经常使用的手段,我们知道,i...
  • jbgtwang
  • jbgtwang
  • 2013年07月18日 17:56
  • 14573

Mybatis 调用oracle存储过程的方法介绍

1:调用无参数的存储过程。 创建存储过程: Mapper.xml 配置:经测试其他标签(update、insert、select)也可以。 Mapper.java MapperTe...

MyBatis学习总结(六)——调用存储过程

一、提出需求   查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 二、准备数据库表和存储过程 1 create table p_user( 2 id ...

Mybatis - mssql 存储过程调用

mybatis { call DATA_SELF_CHECK() } mssqlALTER PROCEDURE [dbo].[DATA_SELF_CHECK
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:mybatis调用存储过程
举报原因:
原因补充:

(最多只允许输入30个字)