mybatis调用oracle过程,使用MyBatis调用Oracle存储过程
一、Oracle存储过程
存储过程代码:
create or replace procedure TEST_DEMO_PROC(param_name IN VARCHAR2, return_result OUT VARCHAR2) is
begin
return_result := 'Hello ' || param_name;
end TEST_DEMO_PROC;
/
测试存储过程:
declare result varchar2(100);
begin
test_demo_proc('Kevin', result);
DBMS_OUTPUT.put_line(result);
end;
/
####二、ojdbc6的Maven Dependency配置
com.oracle
ojdbc6
12.1.0.1-atlassian-hosted
三、Oracle连接配置
Oracle数据库连接属性(需要根据自己的实际情况进行修改):
db.driverClass=oracle.jdbc.OracleDriver
db.url=jdbc:oracle:thin:@localhost:1521/xe
db.username=system
db.password=password
数据源dataSource配置:
四、MyBatis的Mapper和Mapper对应的xml文件
Mapper文件:
/**
* 存储过程测试Demo
*
* @author Kevin
* @date 2017-01-03
*/
public interface ProcedureDemoMapper {
/**
* 测试方法
*
* @param param
*/
void testMethod(Map param);
}
Mapper对应的xml文件:
{call system.test_demo_proc(?, ?)}
五、Mapper单元测试代码
package mybatis;
import java.util.HashMap;
import java.util.Map;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.zkj.dal.mybatis.model.mapper.ProcedureDemoMapper;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:/mybatis.xml"})
public class ProcedureDemoMapperTest extends AbstractJUnit4SpringContextTests {
private ProcedureDemoMapper mapper;
@Before
public void setUp() {
mapper = applicationContext.getBean(ProcedureDemoMapper.class);
}
@Test
public void testMethod() {
Map paramMap = new HashMap();
paramMap.put("param_name", "Kevin");
mapper.testMethod(paramMap);
System.out.println(paramMap.get("return_result"));
// 输出结果为:Hello Kevin
}
}
mybatis调用oracle过程,使用MyBatis调用Oracle存储过程相关推荐
- 去oracle过程,记一次Oracle数据恢复过程
事情的起因是,一个应用升级后,某一个操作导致一个表的几个列全部被更新为同一值(忍不住又要唠叨测试的重要性).这样的错误居然出现在应用代码中,显然是重大的BUG.那个是罪魁祸首的SQL,UPDATE语句 ...
- oracle dblink 20001,解决ORA-02021: 不允许对远程数据库进行 DDL 操作下面通过DBLINK调用远程过程来执行这样的操作。...
一般情况下,当我们直接truncate一个远程的表的时候,通常会返回如下的错误信息: ORA-02021: DDL operations are not allowed on a remote dat ...
- Oracle如何限制非法调用包中过程
原文:http://www.oracle.com/technetwork/issue-archive/2015/15-jan/o15plsql-2398996.html 假如我有一个包P_A,其中封装 ...
- java调用oracle删除,使用IDEA对Oracle数据库进行简单增删改查操作
1.1 java中的数据存储技术 在java中,数据库存取技术可分为如下几类: 1.jdbc直接访问数据库 2.jdo(java data object)是java对象持久化的新的规范,也是一个用于存 ...
- JavaEE + Oracle + Spring Boot + Mybatis + Maven 开发简易版银行管理系统(附源码)
文章目录 JavaEE + Oracle + Spring Boot + Mybatis + Maven 开发简易版银行管理系统 一.系统介绍 二.开发步骤 三.系统展示 四.开发总结 五.数据库相关 ...
- oracle 返回hashmap,解决:oracle+myBatis ResultMap 类型为 map 时返回结果中存在 timestamp 时使用 jackson 转 json 报错...
前言:最近在做一个通用查询单表的组件,所以 sql 的写法就是 select *,然后 resultType="map" ,然后使用 jackson @ResponseBody 返 ...
- 把EXCEL用程序导入到ORACLE中(SpringMVC+MyBatis)
id="BAIDU_DUP_fp_iframe" src="//pos.baidu.com/wh/o.htm?ltr=" style="width: ...
- oracle的form开发,Oracle Form开发之调用Form
Form开发中经常会用到Form间相互调用的功能,总结了以下,大概有以下3种方法: 方法1 PROCEDURE shot_plan_new IS fm_id FormModule; BEGIN fm_ ...
- Mybatis源码解析之Mybatis初始化过程
一.搭建一个简单的Mybatis工程 为了了解Mybatis的初始化过程,这里需要搭建一个简单的Mybatis工程操作数据库,工程结构如下: 一个UserBean.java private int i ...
最新文章
- s2 devMode cmdshell
- Line 923: Char 9: runtime error: reference binding to null pointer of type ‘int‘ (stl_vector.h)
- VTK:Math之EigenSymmetric
- 用 DomIt! XML 处理工作
- ROS:ubuntuKylin17.04-Ros使用OrbSLAM2
- Windows Live Messenger 新功能预览
- 拿到大厂Offer了!
- 在手机上查看和测试vue脚手架搭建的项目
- Chisel3 - Tutorial - Parity
- 生产环境 JDK6 升级 JDK8
- 计算机英语词汇电子书,计算机英语词汇-打印版.pdf
- 2022-05-30 无法验证是否已安装所需的Microsoft更新KB2919355
- 苹果弃用 3D Touch!
- c++ private、protect、public、virtual详细说明***
- 外键不兼容问题( in foreign key constraint are incompatible)
- 无能狂怒之“恢复VSCode按Enter键换行”问题
- 每天学习Java一点点
- 计算机网络码分多址CDMA及计算例题(简单易懂)
- swoolephp加密_6种php加密解密方法
- 高标农田建设项目快速处理项目建设规模范围线