MyBatis调用Oracle存储过程

1、无输入和输出参数的存储过程

2、带有输入和输出参数的存储过程

3、返回游标的存储过程

mybatis中的配置文件代码

     <resultMap type="java.util.HashMap" id="cursorMap">
</resultMap>
<select id="paging" parameterType="java.util.Map" statementType="CALLABLE">
{CALL EXTRA_WORK_APPLY_DB(
#{USER_ID,mode=IN,jdbcType=VARCHAR},
#{PROC_DEF_ID,mode=IN,jdbcType=VARCHAR},
#{START_NUM,mode=IN,jdbcType=VARCHAR},
#{END_NUM,mode=IN,jdbcType=VARCHAR},
#{SUCESS_FLAG,mode=OUT,jdbcType=INTEGER},
#{SUCESS_MSG,mode=OUT,jdbcType=VARCHAR},
#{V_CURSOR,mode=OUT,jdbcType=CURSOR,resultMap=cursorMap}
)}
</select>

JAVA DAO接口定义的接口方法

 public interface IOvertimeDAO {

     public void paging(Map<String, Object> query);
}

JAVA ServiceImpl中对返回游标的处理

     public List<Map<String, Object>> paging(Map<String, Object> query) {
query.put("USER_ID", Util.getInstance().getUserInfo(ServletActionContext.getRequest()).getUserID());
query.put("PROC_DEF_ID", "Extra-workApplicationFlow");
query.put("V_CURSOR", OracleTypes.CURSOR);
this.overtimeDAO.paging(query);
List<Map<String, Object>> result = (List<Map<String, Object>>)query.get("V_CURSOR");
return result;
}

MyBatis调用Oracle存储过程的更多相关文章

  1. springboot+mybatis调用oracle存储过程

    1 存储过程参数为VARCHAR 代码逻辑:controller层定义实体类对象entity,并entity.set给存储过程的输入参数赋值,把赋值后的实体类通过service层传到dao层,然后通过 ...

  2. mybatis 调用 oracle 存储过程 select into 无记录时NO_DATA_FOUND异常处理分析

    首先根据这篇文章:http://www.cnblogs.com/coolzdp/p/7717332.html 我们知道存储过程中 SELECT * INTO 如果没有记录是不会往下执行的,直接抛出NO ...

  3. mybatis调用oracle存储过程的几个参考例子

    首先写一个存储过程: create or replace procedure p_syn_equipment_20161205 is sqlstr ); begin --清空表 sqlstr := ' ...

  4. mybatis 调用oracle存储过程如何返回out参数值

    调试了半天,其实整体用map传入传出也挺简单, 主要是调用存储过程 select标签里平时习惯不写 statementType="CALLABLE",调用没有out参数时也能正常用 ...

  5. mybatis调用oracle存储过程例子.

    1.MYBATIS方法: <select id="getFlowNum" statementType="CALLABLE"> <![CDATA ...

  6. mybatis调用oracle存储过程 out游标类型参数 如何赋给java map

    <resultMap id="ticketInfosResultMap" type="Map"> <!--result要是默认用列名的话完全不 ...

  7. Java调用oracle存储过程通过游标返回临时表数据

    注:本文来源于 <  Java调用oracle存储过程通过游标返回临时表数据   > Java调用oracle存储过程通过游标返回临时表数据 项目开发过程中,不可避免的会用到存储过程返回结 ...

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

    注:本文来源于 < Mybatis调用PostgreSQL存储过程实现数组入参传递  > 前言 项目中用到了Mybatis调用PostgreSQL存储过程(自定义函数)相关操作,由于Pos ...

  9. C#调用Oracle存储过程

    C#调用Oracle存储过程的代码如下所示: using System; using System.Collections.Generic; using System.Collections.Obje ...

随机推荐

  1. Runtime实战之定制TabBarItem大小

    方案一:UIEdgeInsets 适用场景: 适合APP的TabBarItemImage的图片资源放在本地 图片超出tabbar的高度,需移动其位置,来进行适应 弊端: 若在本地配置好后,tabbar ...

  2. Swift: 在Swift中桥接OC文件(自己创建的类文件、第三方库文件)

    一.介绍 随着Swift的逐渐成熟,使用swift开发或者混合开发已经成为了一个趋势,本身苹果公司也十分推荐使用Swift这门新语言.目前Swift已经更新到了3.0,估计没有多久4.0就要出来了.那 ...

  3. sql关联表查询结果并插入

    这里涉及三个表,AA,BB,CC,将AA的数据更新到CC表中,将AA中LABEL_ID分别截取字段与BB表中的label_id对应查询到LABEL_NAME作为CC表的一个字段插入,这里分成四段查询 ...

  4. springmvc之格式化要显示的小数或者日期。

    把保存的小数或者日期按照想要的格式显示. 首先导入jar包joda-time-2.3.jar,下载地址http://pan.baidu.com/s/1gfNuUfp 这里使用注解的方式进行格式化. 创 ...

  5. echarts 图表应用

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. 屌丝程序员的梦想 (六) 我也写个开源CMS

    离开上家公司之后,我没急着找下家公司,一直以来都是为公司做各个细小的功能却没有属于自己的完整的项目 思来想去,我准备用自己熟悉的thinkphp 和 extjs写一个开源的cms,从用户系统,文章系统 ...

  7. git基本配置

    用户信息 你个人的用户名称和电子邮件地址,用户名可随意修改,git 用于记录是谁提交了更新,以及更新人的联系方式. $ git config --global user.name "Donl ...

  8. 搭建git for windows服务器

    文档出处 :http://blog.csdn.net/code_style/article/details/38764203 http://blog.csdn.net/aaron_luchen/art ...

  9. paper 124:【转载】无监督特征学习——Unsupervised feature learning and deep learning

    来源:http://blog.csdn.net/abcjennifer/article/details/7804962 无监督学习近年来很热,先后应用于computer vision, audio c ...

  10. PopupWindowAction breaking MEF import?

    If you use Prism InteractionRequest.PopupWindowAction feature, you might have found the MEF Import a ...