MyBatis调用Oracle存储过程
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存储过程的更多相关文章
- springboot+mybatis调用oracle存储过程
1 存储过程参数为VARCHAR 代码逻辑:controller层定义实体类对象entity,并entity.set给存储过程的输入参数赋值,把赋值后的实体类通过service层传到dao层,然后通过 ...
- mybatis 调用 oracle 存储过程 select into 无记录时NO_DATA_FOUND异常处理分析
首先根据这篇文章:http://www.cnblogs.com/coolzdp/p/7717332.html 我们知道存储过程中 SELECT * INTO 如果没有记录是不会往下执行的,直接抛出NO ...
- mybatis调用oracle存储过程的几个参考例子
首先写一个存储过程: create or replace procedure p_syn_equipment_20161205 is sqlstr ); begin --清空表 sqlstr := ' ...
- mybatis 调用oracle存储过程如何返回out参数值
调试了半天,其实整体用map传入传出也挺简单, 主要是调用存储过程 select标签里平时习惯不写 statementType="CALLABLE",调用没有out参数时也能正常用 ...
- mybatis调用oracle存储过程例子.
1.MYBATIS方法: <select id="getFlowNum" statementType="CALLABLE"> <![CDATA ...
- mybatis调用oracle存储过程 out游标类型参数 如何赋给java map
<resultMap id="ticketInfosResultMap" type="Map"> <!--result要是默认用列名的话完全不 ...
- Java调用oracle存储过程通过游标返回临时表数据
注:本文来源于 < Java调用oracle存储过程通过游标返回临时表数据 > Java调用oracle存储过程通过游标返回临时表数据 项目开发过程中,不可避免的会用到存储过程返回结 ...
- Mybatis调用PostgreSQL存储过程实现数组入参传递
注:本文来源于 < Mybatis调用PostgreSQL存储过程实现数组入参传递 > 前言 项目中用到了Mybatis调用PostgreSQL存储过程(自定义函数)相关操作,由于Pos ...
- C#调用Oracle存储过程
C#调用Oracle存储过程的代码如下所示: using System; using System.Collections.Generic; using System.Collections.Obje ...
随机推荐
- varnish4.0 流程图以及说明
varnish 中的内置变量 req repos client server bereq beresp bereq bereq.http.HEADER 由varnish发往backend server ...
- .html(),.text()和.val()的差异总结:
.html(),.text()和.val()的差异总结: 1.html(),.text(),.val()三种方法都是用来读取选定元素的内容:只不过.html()是用来读取元素的html内容(包括htm ...
- iOS,自定义控件
1.下拉刷新控件 2.下拉加载更多控件 下拉刷新控件 @property(nonatomic,strong) VRefreshHeadView *vrefresh; [self vrefresh]; ...
- .NET client connection Limit
调试出了一个诡异的问题,使用多个进程没问题,单进程出现了. fix: //默认限制为2个连接 //public const int DefaultPersistentConnectionLimit = ...
- 替换jenkins上打包完成的安装包的方法
修改 /root/.jenkins/jobs/Item名称/lastSuccessful/archive/*/obj 文件夹下的文件,就可以在下图二中下载新修改的文件,需要注意的是,此文件夹下不能有新 ...
- Spting--DI/IOC
DI/IOC <bean> 代表由容器构建的对象(通过反射构建,且类必须有无参的构造方法) 公共属性 id="唯一的id" 在容器中是唯一的 name="类 ...
- 国内固定电话正则验证:'tel': [/0\d{2,3}-\d{7,8}(|([-\u8f6c]{1}\d{1,5}))$/, "请填写有效的电话号码"],
// 验证字段 $('#info_form').validator({ rules : { checkMobile : function(ele) { return checkMobile(ele); ...
- R 操作矩阵和计算SVD的基本操作记录
在R中可以用函数matrix()来创建一个矩阵,应用该函数时需要输入必要的参数值. > args(matrix) function (data = NA, nrow = 1, ncol = 1, ...
- 多线程迭代之——LINQ to TaskQuery
平时经常会迭代集合,如果数据多的话会很耗时. 例子: , , }; list.ForEach(a => DoSomething(a)); void DoSomething(int a) { // ...
- Extjs 一些配置以及方法
1.例如想要实现以下功能,本来model中只有用户的firstname和lastname,但是在grid中展示还需要展示用户姓名,或者只展示用户姓名