1、xml文件
<select id="getGroupNum" statementType="CALLABLE" parameterType="com.guorui.model.ParamSPC">
{call GYL_COMMON.GETGROUPNUM(
#{IN_PARAMETERID,jdbcType=VARCHAR,mode=IN},
#{IN_STEELID,jdbcType=VARCHAR,mode=IN},null,null,null,
#{OUT_GN,jdbcType=INTEGER,mode=OUT},
#{RST,jdbcType=CURSOR,mode=OUT,resultMap=BaseResultMap2,javaType=java.sql.ResultSet})}
</select>
<resultMap id="BaseResultMap2" type="com.guorui.dao.TbSysUser">
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Mon Nov 15 19:49:43 CST 2010.
-->
<result column="USERID" jdbcType="DECIMAL" property="userid" />
<result column="NUSERID" jdbcType="VARCHAR" property="nuserid" />
<result column="STRUSERNAME" jdbcType="VARCHAR" property="strusername" />
<result column="STRDEP" jdbcType="VARCHAR" property="strdep" />
<result column="STRDUTY" jdbcType="VARCHAR" property="strduty" />
<result column="STRUSERPWD" jdbcType="VARCHAR" property="struserpwd" />
<result column="DTINSDATE" jdbcType="TIMESTAMP" property="dtinsdate" />
<result column="STRINSBY" jdbcType="VARCHAR" property="strinsby" />
<result column="DTUPTDATE" jdbcType="TIMESTAMP" property="dtuptdate" />
<result column="STRUPTBY" jdbcType="VARCHAR" property="struptby" />
<result column="LOGIN_COUNT" jdbcType="DECIMAL" property="loginCount" />
<result column="LOGIN_LAST_TIME" jdbcType="TIMESTAMP" property="loginLastTime" />
<result column="STATUS" jdbcType="VARCHAR" property="status" />
<result column="STRDEPNO" jdbcType="VARCHAR" property="strdepno" />
</resultMap>
2、parameter bean
public class ParamSPC {
String IN_PARAMETERID;
String IN_STEELID;
Integer OUT_GN;
List<TbSysUser> RST;
public String getIN_PARAMETERID() {
return IN_PARAMETERID;
}
public void setIN_PARAMETERID(String iN_PARAMETERID) {
IN_PARAMETERID = iN_PARAMETERID;
}
public String getIN_STEELID() {
return IN_STEELID;
}
public void setIN_STEELID(String iN_STEELID) {
IN_STEELID = iN_STEELID;
}
public Integer getOUT_GN() {
return OUT_GN;
}
public void setOUT_GN(Integer oUT_GN) {
OUT_GN = oUT_GN;
}
public List<TbSysUser> getRST() {
return RST;
}
public void setRST(List<TbSysUser> rST) {
RST = rST;
}
}
3、xxxMaper.java 中的方法
Object getGroupNum(ParamSPC param);
4、使用demo
SqlSession session = AllSqlMap.getInstance().openSession();
try {
TbSysUserMapper mapper = session.getMapper(TbSysUserMapper.class);
ParamSPC param = new ParamSPC();
param.setIN_PARAMETERID("010401"); // 填充 in 参数,out 参数不用任何处理
param.setIN_STEELID("65Mn棒带");
mapper.getGroupNum(param);
System.out.println(param.getOUT_GN()); // 获取计算结果
System.out.println(param.getRST().size());
session.commit(true);
} catch(Exception e){
e.printStackTrace();
session.rollback(true);
} finally {
session.close();
}
分享到:
相关推荐
至此,我们就完成了Spring Boot整合MyBatis调用Oracle存储过程并处理游标返回数据的过程。在实际开发中,可以根据需求调整存储过程的逻辑和结果处理方式,以满足各种复杂业务场景。注意,对于大数据量的查询,使用...
通过以上步骤,开发者可以在Spring和MyBatis环境中顺利地调用Oracle存储过程,实现复杂业务逻辑的处理。这不仅可以提高代码的可维护性,还能利用数据库的优势来优化性能。在进行这类操作时,一定要注意参数类型、...
能不能写个动态的业务,只输入存储过程名称,自动获取存储过程参数,并且参数的数据从前台传递过来...只根据输入不同的存储过程名称、参数内容,自动调用不同的存储过程。 已经使用在多个项目中 全开源项目 请放心下载
ibatis调用oracle存储过程分页
Mybatis调用Oracle存储过程的方法详解 Mybatis是一款流行的持久层框架,广泛应用于Java企业级应用开发中。 Oracle存储过程是一种高效的数据库操作方式,通过存储过程可以实现复杂的业务逻辑操作。那么,如何使用...
mybatis调用Oracle存储过程(无参、有入出参)等各种情况例子的详细使用方法 1.无参存储过程调用 2.入参存储过程调用 3.出参存储过程调用 4.入 和 出 参存储过程调用,以及获取出参结果 5.结果集存储过程调用
"Mybatis调用Oracle存储过程传List参数解决方法" Mybatis是当前最流行的持久层框架之一,它提供了强大的数据访问和操作功能。但是,如何将List类型参数传递给Oracle存储过程,实现批量插入数据却是一个棘手的问题,...
下面将详细介绍如何使用MyBatis来调用Oracle存储过程。 ### 1. 创建Oracle存储过程 首先,我们需要在Oracle数据库中创建一个存储过程。例如,假设我们有一个名为`INSERT_EMPLOYEE`的存储过程,用于插入新的员工...
在Spring Boot应用中,调用Oracle数据库的存储过程有多种方式。本文主要介绍三种方法,包括使用`entityManagerFactory.unwrap(SessionFactory.class).openSession()`、直接使用`EntityManager`的`...
总结起来,Mybatis调用PostgreSQL存储过程并处理数组参数的关键步骤包括: 1. 在PostgreSQL中创建带有数组参数的存储过程。 2. 自定义一个TypeHandler,实现对数组类型的转换。 3. 在Mybatis的Mapper XML中配置`...
MyBatis作为一款流行的Java持久层框架,提供了调用存储过程的功能。下面将详细介绍如何在MyBatis中配置和使用存储过程。 ### 1. 配置MyBatis XML映射文件 在MyBatis的映射文件(mapper.xml)中,我们需要为存储...
本篇文章将深入探讨如何使用Java调用Oracle存储过程,并通过游标获取存储过程中返回的临时表数据。 首先,Oracle存储过程是一种在数据库端执行的预编译SQL语句和PL/SQL代码集合。它可以接收参数、执行业务逻辑并...
在IT领域,特别是数据库操作与Java开发中,利用ibatis框架调用Oracle存储过程是一个常见的需求,这不仅能够提升代码的执行效率,还能增强应用程序的安全性。本文将深入解析ibatis如何与Oracle数据库中的存储过程进行...
本文将详细讲解如何使用Java调用Oracle存储过程,并提供示例代码。 首先,我们需要了解Java中用于与数据库交互的核心类,包括`java.sql.Connection`、`java.sql.CallableStatement`和`java.sql.Types`。`Connection...
MyBatis 调用 Oracle 存储过程返回复杂结果集 MyBatis 是一种基于 Java 的持久层框架,提供了对数据库的交互操作。然而,在 MyBatis 的官方文档中,并没有对如何调用 Oracle 存储过程的介绍,导致了网络上的资料...
通过本文的探讨,我们不仅了解了如何在Java中调用Oracle存储过程并传递集合参数的基本原理,还深入实践了相关的技术细节。这对于构建高性能、高可靠性的企业级应用而言,是不可或缺的知识点。在未来,随着数据量的...
使用MyBatis框架配置Oracle和MySql中存储过程与函数的调用。 分别描述了两种方式的实现:基于XML方式和注解方式。 其中Oracle所使用版本为Oracle11g_XE版,MySQL为5.7版本
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。在实际开发中,将 MyBatis 整合到 Oracle 数据库进行数据操作,包括增删改查,是常见的需求。以下将详细介绍这个过程。 1. **环境准备**...
MyBatis是一个优秀的Java持久层框架,它支持定制化SQL、存储过程以及高级映射。在使用MyBatis与Oracle数据库进行交互时,通常需要一些特定的库来确保连接和操作的顺利进行。这里提到的两个jar包,"ojdbc6.jar"和...