mybatis 调用存储过程 返回游标 实例
来源:互联网 发布:电脑解压软件 编辑:程序博客网 时间:2024/05/16 12:30
[sql] view plaincopy
- 存储过程示例:
- create or replace procedure Fsp_Plan_CheckPrj(v_grantno varchar2, v_deptcode number, v_cursor out sys_refcursor) is
- ………………
- ---返回统计结果
- open v_Cursor for
- select s.plan_code,
- s.plan_dept,
- s.plan_amount,
- s.exec_amount,
- p.cname as plan_name,
- d.cname as dept_name
- from Snap_plan_checkprj s
- left join v_plan p
- on s.plan_code = p.plan_code
- left join org_office d
- on s.plan_dept = d.off_org_code
- group by s.plan_code,
- s.plan_dept,
- s.plan_amount,
- s.exec_amount,
- p.cname,
- d.cname;
- end;
- end Fsp_Plan_CheckPrj;
mybatis:(mybatis doc api: http://mybatis.github.io/mybatis-3/zh/sqlmap-xml.html#Result_Maps)
java层代码
[java] view plaincopy
- Map<String, Object> params = new HashMap<String, Object>();
- GrantSetting gs = this. grantSettingDao.get(grantCode);
- params.put( "grantNo", StringUtils. substring(gs.getGrantNo(), 0, 2));
- params.put( "offOrgCode", SecurityUtils.getPersonOffOrgCode());
- params.put("v_cursor", new ArrayList<Map<String, Object>>());//传入一个jdbc游标,用于接收返回参数
- this. batisDao. getSearchList("call_Fsp_Plan_CheckPrj", params);
mybatis xml配置
[html] view plaincopy
- <resultMap type ="java.util.HashMap" id= "cursorMap"><!--配置返回游标中别名对应的resultMap -->
- <result column ="plan_code" property="plan_code" />
- <result column ="plan_dept" property="plan_dept" />
- <result column ="plan_amount" property="plan_amount" />
- <result column ="exec_amount" property="exec_amount" />
- <result column ="plan_name" property="plan_name" />
- <result column ="dept_name" property="dept_name" />
- </resultMap >
- <select id ="call_Fsp_Plan_CheckPrj" parameterType= "map" statementType="CALLABLE" >
- <!--注明statementType="CALLABLE"表示调用存储过程-->
- {call Fsp_Plan_CheckPrj(#{grantNo, jdbcType=VARCHAR, mode=IN},
- #{offOrgCode, jdbcType=INTEGER, mode=IN},
- #{v_cursor, mode=OUT, jdbcType=CURSOR, resultMap=cursorMap})}
- <!--传入传出参数要注明mode=IN/OUT 并要注明jdbcType(在网上可以查询mybatis支持哪些jdbcType类型),返回参数要注明对应的resultMap-->
- </select >
最后,在jsp页面只需遍历
params.put( "v_cursor", OracleTypes. CURSOR);中的v_cursor。本身就是一个可遍历的list结果集
0 0
- mybatis 调用存储过程 返回游标 实例
- mybatis 调用存储过程 返回游标 实例
- mybatis 调用存储过程 返回游标 实例
- hibernate 调用存储过程 返回游标 实例
- SSM-Mybatis调用Oracle存储过程返回结果集(游标)
- Oracle存储过程返回游标实例详解
- Oracle存储过程返回游标实例详解
- del调用返回游标的存储过程
- JDBC调用SQL存储过程返回游标
- ibatis 调用存储过程返回游标sys_refcursor
- mybatis 调用oracle存储过程,传参、返回游标的值获取--示例
- mybatis调用oracle存储过程返回游标 读取到java的List<Map>
- c#调用Oracle存储过程返回的游标结果代码实例
- mybatis 存储过程,游标
- 存储过程返回游标
- 存储过程返回游标
- 过程返回游标实例
- mybatis调用oracle存储过程 返回sys_refcursor
- 在DVR中增加系统模式CGI接口
- 网络获取数据如何显示到cell上
- 裸辞太久,要这样谈出满意的薪水!
- Eclipse启动遇到Error when loading the SDK
- Linux配置
- mybatis 调用存储过程 返回游标 实例
- MyEclipse10.0 采用插件方式安装 SVN
- 4412 裸板程序led2
- Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
- Linux 多线程 网络编程 管道 socket等相关心得
- Mybits调用存储过程和函数返回游标,parameterType值必须为java.util.Map,由于它会把返回的游标放在里面
- 百度地图大数据MapV的相关介绍
- UIButton关闭交互的三种实现方法
- Websphere 删除概要文件