您现在的位置是:首页 > 编程语言学习 > 后端编程语言 > 文章正文 后端编程语言

mybatis调用Oracle存储过程并接受返回值的示例代码

2022-08-12 09:53:50 后端编程语言

简介这篇文章主要介绍了mybatis 调用 Oracle 存储过程 并接受返回值,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的...

这篇文章主要介绍了mybatis 调用 Oracle 存储过程 并接受返回值,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下!

存储过程

  1.   PROCEDURE P_TEST_MYBATIS(iv_ins1 IN VARCHAR2, --id 
  2.    iv_ins2 IN VARCHAR2, --no 
  3.    ov_res  OUT number --提示信息 
  4.    ) IS 
  5.   BEGIN 
  6. ov_res := 0; 
  7. select count(1) 
  8.   into ov_res 
  9.   from jc_zhiydoc t 
  10.  where t.zhiy_id = iv_ins1 
  11.    and t.zhiy_no = iv_ins2; 
  12.    
  13.   EXCEPTION 
  14. WHEN OTHERS THEN 
  15.   RAISE; 
  16.   END; 

mapper.xml

这里我是在pkg_ck_task包下面的存储过程

  1. <select id="exec" statementType="CALLABLE"
  2. call   pkg_ck_task.P_TEST_MYBATIS( 
  3. #{iv_ins1}, 
  4. #{iv_ins2}, 
  5. #{ov_res,jdbcType=INTEGER,mode=OUT} 
  6.  
  7. </select> 

dao层

  1. void exec(Map<String,Object> params); 

调用

  1. public int exec(){ 
  2. Map<String,Object> map = new HashMap<>(); 
  3. map.put("iv_ins1","ZIY00007709"); 
  4. map.put("iv_ins2","0103"); 
  5. mapper.exec(map); 
  6. int res =  (int)map.get("ov_res"); 
  7. return res; 

结果:

相关文章

站点信息