当前位置: 首页 > news >正文

全立体网站建设佛山做seo推广公司

全立体网站建设,佛山做seo推广公司,佛山建设外贸网站,沈阳微信网站开发问题: 在使用 mybatis-plus 调用sqlserver 存储过程 没有返回值 经过资料查找 注意点 此处使用Map传参,原因在于存储过程的返回值,通常在参数定义中实现,如In 入参、out 出参。 这样当执行后有结果返回时,则可以将结…

问题: 在使用 mybatis-plus 调用sqlserver 存储过程 没有返回值

经过资料查找

注意点
此处使用Map传参,原因在于存储过程的返回值,通常在参数定义中实现,如In 入参、out 出参。

这样当执行后有结果返回时,则可以将结果映射入传入的 Map对象中。

Mybatis的statementType取值:
在这里插入图片描述

获取返回值
在调用对应的存储过程sql后,返回值的获取如下:

bigScreenJobMapper.proHbjtFund(map);
String result = map.get("result");

Mybatis 使用@select注解调用带输出参数的存储过程

//@Options 必须使用 这个注解

@Options(statementType = StatementType.CALLABLE)
@Select(“{Call procdure_name(” +
“#{map.name,mode=OUT,jdbcType=INTEGER},” +
“#{map.password,mode=OUT,jdbcType=INTEGER},” +
“#{map.total,mode=OUT,jdbcType=INTEGER})}”)
void getXXXXX(Map<String,Object> map);

//调用
Map<String, Object> map=new HashMap<>();
XXXXMapper.getXXXXX(map);
Map<String, Integer> totalMap = (Map<String, Integer>) map.get(“map”);//map获取
Integer total = totalMap.get(“total”);//key值与传参时一致
Integer name= totalMap.get(“name”);
Integer password= totalMap.get(“password”);

注意点:

1、@options:statementType.CallAble 必须声明,告诉程序这是要执行存储过程,否则会报,main找不到

2、有两种方式带参:“$””#”

主要区别就是#带双引号,$不带

例如:#{id}代表’id’,${id}代表id

第二种因为传一个参数是可以省略@Param(“”)的,但是这种情况下不能使用${},

传两个参数以上时,必须要写@Param(“”)

3、 存储过程的output参数,只能通过传入的map获取参数,使用map.XXX ;

输出参数 设置mode=OUT ,jdbcType与SQL中存储过程类型一致。

4、存储过程对应的数据类型为枚举类型,需要使用大写,如VARCHAR

5、存储过程返回的结果集可直接用返回的map接收

以下是示例:
调用

    Map<String,Object> map=new HashMap<>();map.put("SID",data.getSid());map.put("SType",-1);map.put("SFlag",1);map.put("SUserAccount",RequestUtils.getUsername());baseMapper.Pr_Trans_Approve_PrBar(map);if (StringUtils.isEmpty(map.get("result"))) {throw new ErpRuntimeException("存储过程操作异常!");}else if(!StringUtils.isEmpty(map.get("result")) && map.get("result").toString().indexOf("NNNN") > -1){throw new ErpRuntimeException("失败:" + map.get("result").toString().replaceAll("N", ""));}     

Mapper 文件

    @Options(statementType = StatementType.CALLABLE)@Select("exec [dbo].Pr_Trans_Approve_PrBar "+"#{SID,mode=IN},"+"#{SType,mode=IN},"+"#{SFlag,mode=IN},"+"#{SUserAccount,mode=IN},"+"#{result,mode=OUT,jdbcType=VARCHAR}")void Pr_Trans_Approve_PrBar(Map<String,Object> request);
http://www.khdw.cn/news/60440.html

相关文章:

  • 河南烟草电子商务网站产品设计
  • wordpress page width单页应用seo如何解决
  • 沈阳网站营销独立站seo实操
  • 网站怎么做流量互换北京seo工程师
  • 网站栏目结构哪些宝鸡seo优化公司
  • 做网站委托书常用的搜索引擎有哪些?
  • 自做头像的网站收录优美图片topit
  • 柳州网站推广哪家好玉林网站seo
  • 如何在国外做网站推广品牌
  • 怎么发布个人网站如何用手机制作网站
  • 博罗做网站哪家强游戏推广员是诈骗吗
  • 云阳网站建设厦门seo厦门起梦
  • 济南轻电商网站建设公司上海快速优化排名
  • 义乌网站制作是什么深圳网站制作哪家好
  • iis 网站制作荆门今日头条新闻发布
  • 加强政府网站信息建设工作通知专业海外网站推广
  • 网站建设合同福州短视频seo获客
  • 学生做的网站东莞网络公司电话
  • 网站做等保测评百度联盟官网
  • 网站制作公司需要什么资质google推广妙招
  • 如何做医疗网站的专题页淘宝关键词排名怎么查询
  • 微网站建设包括哪些方面技能培训有哪些科目
  • 网站建设者属于广告经营者吗5118大数据平台官网
  • 江苏外贸网站建设推广seo和sem的区别是什么
  • 重庆做网站_重庆网站建设_重庆网络推广_重庆网络公司黄页推广引流
  • 工程类招聘网站哪个好seoul怎么读
  • 广州网站开发技术腾讯企业邮箱登录入口
  • 广州网站建设系统开发seo网上课程
  • 广东一站式网站建设报价杭州seo培训
  • 站设计培训课程百度图片识别搜索