最近项目使用了sqlserver做为数据库服务器,在使用mybatis调用存储过程的时候报错,具体如下:
mybatis映射器配置如下:
后调试发现是由于参数resultList jdbcType=CURSOR配置错误导致,查看源码发现mybatis JdbcType的CURSOR只支持Oracle,如下图所示:
由于是初次使用MSSQL,写过程的思维还停留在oracle当中,后发现MSSQL返回结果集无需像oracle那样通过游标实现,使用 cursor varying output 的目的,是为了在 MSSQL 中调用过程时,获得一个已打开的游标。
注意:这里是指在MSSQL中处理的游标,并非你的客户端程序从服务器取得的记录集游标。
或者说,JAVA客户端是无法处理 varying output 带出的游标。
其实只要在存储过程中设置一个查询语句,JAVA程序调用这个存储过程后,可以获得一个记录集,在程序中处理记录集,类似于在 MSSQL 中处理游标即可。
最后修改映射器配置文件后程序正常执行,具体如下图所示:
相关推荐
SpringMVC+Mybatis+SQLServer整合源码 含数据库文件
MyBatis连接 SQL server 数据库
mybatis中,sqlserver分页
一个简单的MyBatis连接SQLServer的例子,把数据库参数改成自己的就可以实现连接
这是个人搭建的基础开发框架,比较简单,可以自由拓展。里面还包含了部分钉钉api,有问题请留言指教小弟
能不能写个动态的业务,只输入存储过程名称,自动获取存储过程参数,并且参数的数据从前台传递过来...只根据输入不同的存储过程名称、参数内容,自动调用不同的存储过程。 已经使用在多个项目中 全开源项目 请放心下载
mybatis spring sqlserver mysql 框架 实现分页技术
基于SQL注解的方式操作数据库,规避了创建映射文件
跨库批量插入
基于springboot开发的简单且实用的仓库系统,拥有复制,导出,打印等多功能。新增几乎都是自动带出,并且还有列点击排序,列随意拖动等实用功能。
MyBatis通过 JDBC连接 SQL server 数据库 最小例子, 数据库为SQL server 2005,没有引用多余的库
这是mybatis调用存储过程的代码
mybatis-generator生成sqlserver数据库Bean、Dao、Mapper代码工具
mybatis调用orclae存储过程
基于Java的工资管理系统源码+学习说明(Mybatis+sqlserver+swing).zip 基于Java的工资管理系统源码+学习说明(Mybatis+sqlserver+swing).zip 基于Java的工资管理系统源码+学习说明(Mybatis+sqlserver+swing).zip...
本篇文章主要介绍了Mybatis调用MySQL存储过程的简单实现,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
MyBatis调用MYSQL存储过程 返回多行 引用的包: asm-3.1.jar cglib-2.2.jar commons-logging-1.1.1.jar log4j-1.2.13.jar mybatis-3.0.4.jar mysql-connector-java-5.1.13.jar slf4j-api-1.5.8.jar slf4j-log4j12-...
项目中用到了Mybatis调用PostgreSQL存储过程(自定义函数)相关操作,由于PostgreSQL自带数组类型,所以有一个自定义函数的入参就是一个int数组,形如: 代码如下:CREATE OR REPLACE FUNCTION “public”.”func_...
使用maven+springMVC+mybatis编写的项目例子,如果有需要的可以下载,里面还用到了mybatis调用储存过程。
mybatis-sql的执行过程,UML时序图,UML时序图,UML时序图,UML时序图,UML时序图 mybatis-sql的执行过程,UML时序图,UML时序图,UML时序图,UML时序图,UML时序图 mybatis-sql的执行过程,UML时序图,UML时序图,...