SpringBoot Mybatis注解调用Mysql存储过程并接收多个OUT结果集(多个mode=IN和mode=OUT参数)
其他同学提供的方式大部分都是Map接收调用mysql存储过程返回OUT结果集,要么游标,要么单个OUT,然后再次加工成想要的对象。涉及到直接用注解实现自动转换OUT参数结果集为对象时,都是忽略带过。
下面为各位踩坑的同学上代码描述如何处理调用mysql多in多out的存储过程:
@Options(statementType = StatementType.CALLABLE)@Select("CALL jira_gf.Proc_YFZX_GetProjectIssuesByProjectKeyAndVersionAndIssueType_dev(" +"#{projectKey,mode=IN,jdbcType=VARCHAR}," +"#{fixOrAffectversion,mode=IN,jdbcType=VARCHAR}," +"#{issueType,mode=IN,jdbcType=VARCHAR}," +"#{project_id,mode=OUT,jdbcType= INTEGER}," +"#{project_name,mode=OUT, jdbcType=VARCHAR}," +"#{project_key,mode=OUT, jdbcType=VARCHAR}," +"#{version_id,mode=OUT,jdbcType=INTEGER}," +"#{version_name,mode=OUT,jdbcType=VARCHAR}," +"#{version_startdate,mode=OUT,jdbcType=VARCHAR}," +"#{version_releasedate,mode=OUT,jdbcType=VARCHAR}," +"#{version_archived,mode=OUT,jdbcType=VARCHAR}," +"#{version_released,mode=OUT,jdbcType=VARCHAR}," +"#{sprint_id,mode=OUT,jdbcType=INTEGER}," +"#{sprint_name,mode=OUT,jdbcType=VARCHAR}," +"#{sprint_startdate,mode=OUT,jdbcType=BIGINT}," +"#{sprint_startdate_datetime,mode=OUT,jdbcType=VARCHAR}," +"#{sprint_enddate,mode=OUT,jdbcType=BIGINT}," +"#{sprint_enddate_datetime,mode=OUT,jdbcType=VARCHAR}," +"#{sprint_completedat,mode=OUT,jdbcType=BIGINT}," +"#{sprint_completedate_datetime,mode=OUT,jdbcType=VARCHAR}," +"#{sprint_started,mode=OUT,jdbcType=INTEGER}," +"#{sprint_closed,mode=OUT,jdbcType=INTEGER}," +"#{issue_id,mode=OUT,jdbcType=INTEGER}," +"#{issue_status,mode=OUT,jdbcType=INTEGER}," +"#{status_name,mode=OUT,jdbcType=VARCHAR}," +"#{issuetotal,mode=OUT,jdbcType=INTEGER})")@Results(value = {@Result(property = "projectId", column = "project_id"),@Result(property = "projectName", column = "project_name"),@Result(property = "projectKey", column = "project_key"),@Result(property = "versionId", column = "version_id"),@Result(property = "versionName", column = "version_name"),@Result(property = "versionStartdate", column = "version_startdate"),@Result(property = "versionReleasedate", column = "version_releasedate"),@Result(property = "versionArchived", column = "version_archived"),@Result(property = "versionReleased", column = "version_released"),@Result(property = "sprintId", column = "sprint_id"),@Result(property = "sprintName", column = "sprint_name"),@Result(property = "sprintStartdate", column = "sprint_startdate"),@Result(property = "sprintStartdateDatetime", column = "sprint_startdate_datetime"),@Result(property = "sprintEnddate", column = "sprint_enddate"),@Result(property = "sprintEnddateDatetime", column = "sprint_enddate_datetime"),@Result(property = "sprintCompletedate", column = "sprint_completedate"),@Result(property = "sprintCompletedateDatetime", column = "sprint_completedate_datetime"),@Result(property = "sprintStarted", column = "sprint_started"),@Result(property = "sprintClosed", column = "sprint_closed"),@Result(property = "issueId", column = "issue_id"),@Result(property = "issueStatus", column = "issue_status"),@Result(property = "statusName", column = "status_name"),@Result(property = "issueTotal", column = "issuetotal")})List<JiraProjectInfoWithSprintEntity> getTargetProjectWithIssuesByPorjectKeyAndVersionAndIssueType(@Param("projectKey") String projectKey, @Param("fixOrAffectversion") String fixOrAffectversion, @Param("issueType") String issueType);
SpringBoot Mybatis注解调用Mysql存储过程并接收多个OUT结果集(多个mode=IN和mode=OUT参数)相关推荐
- 在mybatis用mysql的代码块_关于Mybatis 中使用Mysql存储过程的方法
1.存储过程的简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用 ...
- hibernate mysql 存储过程_hibernate调用mysql存储过程
hibernate调用mysql存储过程 在最近的项目中,碰到一小段数据库数据分析的程序,需要结合多张表联合查询或涉及到子查询,项目主要采用的java ee开发,使用了hibernate框架,由于这些 ...
- vb获得mysql的值,VB.NET调用MySQL存储过程并获得返回值的方法
本文实例讲述了VB.NET调用MySQL存储过程并获得返回值的方法.分享给大家供大家参考.具体实现方法如下: Dim myConnectionString As String = "Data ...
- jsp实现mysql存储过程_JSP调用MySQL存储过程收藏
JSP调用MySQL存储过程收藏 1使用不带参数的存储过程 使用 JDBC 驱动程序调用不带参数的存储过程时,必须使用 call SQL 转义序列.不带参数的 call 转义序列的语法如下所示: {c ...
- mysql存储过程 php_PHP调用MYSQL存储过程实例
说一下 在PHP页面中调用MYSQL存储过程的方法 以下是几个例子 仅供参考 实例一:无参的存储过程 $conn = mysql_connect('localhost','root','root') ...
- go mysql存储过程_Golang 调用MySQL存储过程
Golang 调用MySQL存储过程 最近写项目发现,很多逻辑业务的实现,写到数据库的存储过程中,然后调用,真的非常方便.后端代码量大大减少,最重要的是性能高,速度快! 引用说明:项目使用数据库ORM ...
- c++调用mysql存储过程_C++中ADO调用MySQL存储过程失败,诡异的语法异常,求解中,附源码...
C++中ADO调用mysql存储过程失败,诡异的语法错误,求解中,附源码 不管怎么调整,死活都出现下面的错误 C++ADO代码我实在找不到什么错误了,难道是MySQL有什么问题,或者有其他需要注意的地 ...
- mysql inputoutput_PHP:同时使用INPUT和OUTPUT参数(不“ INOUT”)调用MySQL存储过程
从PHP,我想在MySQL中调用存储过程.该过程采用输入 和 输出参数- 而不是 " INOUT" 参数. 对于一个简单的示例,说我在MySQL中具有以下存储过程: DELIMIT ...
- jdbc mysql 存储过程查询数据_jdbc调用mysql存储过程实现代码
1. 创建存储过程 建立一个MySQL的存储过程 add_pro 复制代码 代码如下: delimiter // drop procedure add_pro // create procedure ...
最新文章
- 知乎:中国工商银行南宁分行丢失2.5亿,工作人员个人行为,与银行无关
- BZOJ.4180.字符串计数(后缀自动机 二分 矩阵快速幂/倍增Floyd)
- JVM之堆Heap体系概述
- IntelliJ IDEA: 无法创建Java Class文件
- python实现api接口的脚本_Zabbix批量添加主机,Python调用api接口方式【脚本定制】...
- java gson fromjson,Gson的fromJson()方法
- c语言立体图像编程,C语言-编程实例-三视图的画法
- 干货!一文看Doris在作业帮实时数仓中的应用实践
- eZ Publish 的 Site.INI文件的中文翻译
- [iOS] ios的runtime
- LeetCode 56. 合并区间(合并区间+排序)
- CCF NOI1026 表演打分
- Android自定义View的构造函数
- java后端开发需要学什么知识点(JAVA难学吗)
- mpu6050惯性导航学习记录
- 怎么在Excel中快速将英文翻译为中文
- Allegro各属性说明如 Clines或者Cline Segs
- KITTI数据集calib文件解析
- 免费pdf转word网页版
- easyUI datatimebox 设置时分秒不可修改
热门文章
- Greenplum执行计划
- 使用pyqtgraph模块进行PyQt绘图(2)
- 如何关闭linux防火墙
- linux:nohup命令用法
- 未解决:自行打包cpio格式的Ramdisk,与编译成功生成的kernel.bin,deviceTree一起打包成image.ub,不能正常启动kernel的问题???
- jsp四大作用域和九大内置对象
- c#利用ironPython调用Python研究过程
- 浙江数字孪生数字化工厂三维激光扫描建模_三维可视化管理平台_吉优赛维_三维建模解决方案_3D模型
- html 一键复制功能以及下载功能
- Android之重写与重载