MyBatis调用存储过程返回结果集
2016-06-09 02:53
393 查看
存储过程:
Mbatis配置:
Java调用:
create or replace procedure get_result_by_sql(p_sql in varchar2,p_result out sys_refcursor,p_msg out varchar2) is begin open p_result for p_sql; p_msg := '执行SQL成功了'; EXCEPTION WHEN OTHERS THEN p_msg := '执行SQL出错了'; end get_result_by_sql;
Mbatis配置:
<resultMap id="getResultBySQLMap" type="com.hotesion.pojo.testVO"> <result column="id" jdbcType="DECIMAL" property="id" /> <result column="key" jdbcType="VARCHAR" property="key" /> <result column="name" jdbcType="VARCHAR" property="name" /> </resultMap> <select id="getResultBySQL1" statementType="CALLABLE"> {call get_result_by_sql( #{sql,jdbcType=VARCHAR,mode=IN}, #{result,mode=OUT,jdbcType=CURSOR,javaType=ResultSet,resultMap=getResultBySQLMap}, #{msg,mode=OUT,jdbcType=VARCHAR,javaType=String})} </select> <select id="getResultBySQL2" statementType="CALLABLE"> {call get_result_by_sql( #{sql,jdbcType=VARCHAR,mode=IN}, #{result,mode=OUT,jdbcType=CURSOR,javaType=ResultSet,resultType=java.util.LinkedHashMap}, #{msg,mode=OUT,jdbcType=VARCHAR,javaType=String})} </select>
Java调用:
public List getResultBySQL(String sql){ Map<String,Object> map=new HashMap<String, Object>(); map.put("sql", sql); // testDao.getResultBySQL1(map); System.err.println("1====="+map.get("msg")); List list1 = (List)map.get("result"); //或者 testDao.getResultBySQL2(map); System.err.println("2====="+map.get("msg")); List list2 = (List)map.get("result");; return list1; }
相关文章推荐
- Mybatis传递多个参数的解决办法(三种)
- 获取Java的MyBatis框架项目中的SqlSession的方法
- Mybatis逆工程jar包的修改和打包
- 深入浅析mybatis oracle BLOB类型字段保存与读取
- MyBatis MapperProvider MessageFormat拼接批量SQL语句执行报错的原因分析及解决办法
- 详解Java的MyBatis框架和Spring框架的整合运用
- Java的MyBatis框架项目搭建与hellow world示例
- SpringMVC整合mybatis实例代码
- oracle+mybatis 使用动态Sql当插入字段不确定的情况下实现批量insert
- MyBatis学习笔记(二)之关联关系
- 浅析Mybatis 在CS程序中的应用
- Java Mybatis框架入门基础教程
- Windows下Java+MyBatis框架+MySQL的开发环境搭建教程
- Mybatis与Ibatis的区别
- MyBatis学习教程(二)―如何使用MyBatis对users表执行CRUD操作
- Java+MyBatis+MySQL开发环境搭建流程详解
- MyBatis学习教程(四)-如何快速解决字段名与实体类属性名不相同的冲突问题
- Java环境中MyBatis与Spring或Spring MVC框架的集成方法
- spring、mybatis 配置方式详解(常用两种方式)
- Java简单实现SpringMVC+MyBatis分页插件