`

Spring Boot葵花宝典:初露锋芒:MyBatis insert异常 Parameter 'name' not found

 
阅读更多

 

【视频&交流平台】

à悟空学院:https://t.cn/Rg3fKJD

学院中有Spring Boot相关的课程!点击「阅读原文」进行查看!

SpringBoot视频:http://t.cn/A6ZagYTi

Spring Cloud视频:http://t.cn/A6ZagxSR

SpringBoot Shiro视频:http://t.cn/A6Zag7IV

SpringBoot交流平台:https://t.cn/R3QDhU0

SpringData和JPA视频:http://t.cn/A6Zad1OH

SpringSecurity5.0视频:http://t.cn/A6ZadMBe

Sharding-JDBC分库分表实战http://t.cn/A6ZarrqS

分布式事务解决方案「手写代码」:http://t.cn/A6ZaBnIr

宝典纲领:

日出东方,唯我不败,葵花在手,天下我有

Angel是我,Andy是我,悟纤是我。

我就是我,不一样的我,葵花在手,说走就走。

天下神功,武林绝学,葵花宝典,你值得拥有。

 

典录:

       初露锋芒:锋芒:刀尖的刃口和尖端,意指人的棱角和锐气。比喻初次显示出棱角或刚开始表现出力量或才能

 

 

五、宝典5:MyBatis insert异常:BindingException: Parameter'name' not found

5.1 宝典先决

在使用MyBatis  Insert的时候,如下代码(移动端代码支持左右滑动):

 

@Insert("insert into Demo(name,password) values(#{name},#{password})")
public void save(String name,String password);

就会碰到这样的异常信息:

nested exception is org.apache.ibatis.binding.BindingException: Parameter 'name' not found. Available parameters are [0, 1, param1, param2]

 

 

5.2 宝典口诀

出现这个异常的原因是因为你在使用@insert的使用,没有进行相应的字段对应关系。

 

 

口诀:

我的名字叫MB,玩转数据就是NB。

一参一位较随意,咋写咋都对。

两参两位很挑剔,参数名称需定义。

 

 

口诀翻译:

原句:我的名字叫MB,玩转数据就是NB。

翻译:MB:MyBatis,不要理解为TMB,你懂得; NB就是NB。来来来,大家跟我一起唱起来:我的名字叫MB ,玩转数据就是NB! 来来来,大家一起high起来…

原句:一参一位较随意,咋写咋都对。

翻译:对于在insert的时候,如果是一个参数的话,只要参数和参数占位符对应即可,数据插入成功。

原句:两参两位很挑剔,参数名称需定义。

翻译:如果是两个参数的话, 那么对于参数的话,就需要使用@param指定参数的名称,才能插入成功,否则就会报上面的异常信息了。那为什么无法识别呢???看下面解说。

 

5.3 宝典实战

       看如下代码:

@Insert("insert into Demo(name,password) values(#{name},#{password})")
public void save(String name,String password);

 

       在一开始的时候,我们就说了,这个代码就会报如下的错误,那怎么解决呢?翻一下宝典找到:“两参两位有规则,参数名称需定义”。OH, SO DES  NI,那就参数定义名称个名称,它就认识了呗,修改为如下:

@Insert("insert into Demo(name,password) values(#{name},#{password})")
public void save(@Param("name") String name,@Param("password") String password);

这里使用@Param设置参数的对应关系。

但是如下的代码就不会报错:

@Insert("insert into Demo(name,password) values(#{name})")
public void save(String name);

 

当 insert 语句中只有一个参数的,对应的void save方法不需要做任何特殊处理(不需要加@Param也是可以对应上的)。

当有多个参数的时候,需要使用@Param注解进行字段的对应,这是why?

这是因为mybatis当多参数的话,最终是转换成map进行接收参数的,如果未使用@param进行参数名称的定义的话,那么map中的key就是参数的位置0,1或者是param1、param2,这样在使用map.get(key)的时候,就无法获取到相应的值了。

 

 

【宝典库】

 

Spring Boot葵花宝典:小试牛刀:Unrecognized Windows Sockets error: 10106

 

Spring Boot葵花宝典:初出茅庐

 

Spring Boot葵花宝典:初现江湖

 

 

「SpringCloud视频最近更新:

 

24. 覆写Feign的默认配置Configuration之Contract
25. Spring Cloud中关于Feign的常见问题总结
26. 解决Spring Cloud中FeignRibbon第一次请求失败的方法
27. Feign添加 fallbackFactory 属性来触发请求进行容灾降级
28. 断路器Hystrix总结
29. Health Indicator(健康指标) 和metrics stream(指标流)
30. 断路器监控(Hystrix Dashboard)
31. 断路器聚合监控(turbine)

à悟空学院:https://t.cn/Rg3fKJD

学院中有Spring Boot相关的课程!点击「阅读原文」进行查看!

SpringBoot视频:http://t.cn/A6ZagYTi

Spring Cloud视频:http://t.cn/A6ZagxSR

SpringBoot Shiro视频:http://t.cn/A6Zag7IV

SpringBoot交流平台:https://t.cn/R3QDhU0

SpringData和JPA视频:http://t.cn/A6Zad1OH

SpringSecurity5.0视频:http://t.cn/A6ZadMBe

Sharding-JDBC分库分表实战http://t.cn/A6ZarrqS

分布式事务解决方案「手写代码」:http://t.cn/A6ZaBnIr

 

 

微信公众号「SpringBoot最近更新:

 

Java8新特性:接口的默认方法
208. Spring Boot Swagger2:排序 – 漂游记
207. Spring Boot Swagger2:极简方式
我读的书很多,但都没有你好看【一禅录】
206. Spring Boot 2.0 Swagger2:使用
205. Spring Boot 2.0 Swagger2:初识Swagger
当要离开的时候,我却动情了
205. jetcache:你需要知道的小技巧
204. jetcache:在Spring Boot中怎么玩?
遇见阿里,遇见自己
203. 阿里jetcache
202. 阿里Pandora Boot
微信公众号赞赏功能升级了,真的假的?
《喜剧之王》「我养你啊」之人生选择
201. Spring Boot JNDI:Spring Boot中怎么玩JNDI
510阿里日,马老师献上最走心、最科技范儿证婚词~
200. Spring Boot JNDI:在Tomcat中怎么玩JNDI?
199. Spring Boot JNDI:这是虾米?
Spring Boot 数据库迁移系列
Spring Boot葵花宝典:初露锋芒:MyBatis insert异常 Parameter 'name' not found
198. Spring Boot Flyway工作原理

 搜索springboot或者扫描以下二维码即可关注:

 

分享到:
评论

相关推荐

    外卖点餐系统,后端:springboot+mybatis+mybatis-plus 前端:vue+elmen

    后端使用Spring Boot和MyBatis作为开发框架,而前端使用Vue和ElementUI作为开发工具。 后端开发框架 后端使用Spring Boot作为开发框架,Spring Boot是一个轻量级的框架,易于学习和使用,可以快速搭建项目。它提供...

    mybatis-plus-boot-starter-3.5.1-API文档-中文版.zip

    赠送jar包:mybatis-plus-boot-starter-3.5.1.jar; 赠送原API文档:mybatis-plus-boot-starter-3.5.1-javadoc.jar; 赠送源代码:mybatis-plus-boot-starter-3.5.1-sources.jar; 赠送Maven依赖信息文件:mybatis-...

    Spring boot 示例 官方 Demo

    spring-boot-helloWorld:spring-boot的helloWorld版本 spring-boot-mybaits-annotation:注解版本 spring-boot-mybaits-xml:xml配置版本 spring-boot-mybatis-mulidatasource:springboot+mybatis多数据源最简解决...

    简易指南:使用Spring Boot整合MyBatis轻松优雅

    **简易指南:使用Spring Boot整合MyBatis轻松优雅** 在现代Java开发中,Spring Boot以其简洁的配置和快速的应用启动而备受青睐。MyBatis作为轻量级的持久层框架,以其灵活的SQL映射机制深受开发者喜爱。将两者结合...

    Spring Boot Examples

    Spring boot使用的各种示例,以最简单、最实用为标准 spring-boot-helloWorld:spring-boot的helloWorld版本 spring-boot-mybaits-annotation:注解版本 spring-boot-mybaits-xml:xml配置版本 spring-boot-...

    mybatis-spring-boot-autoconfigure-2.1.1-API文档-中英对照版.zip

    赠送jar包:mybatis-spring-boot-autoconfigure-2.1.1.jar; 赠送原API文档:mybatis-spring-boot-autoconfigure-2.1.1-javadoc.jar; 赠送源代码:mybatis-spring-boot-autoconfigure-2.1.1-sources.jar; 赠送...

    spring bootMVC+maven+mybatis

    Spring Boot MVC + Maven + MyBatis 是一个常见的Java Web开发技术栈,用于构建高效、简洁且可独立运行的微服务应用。在这个项目中,我们主要关注三个核心组件:Spring Boot、MVC 和 MyBatis。 1. **Spring Boot**...

    spring-boot-starter:MyBatis与Spring Boot的集成

    MyBatis与Spring Boot集成 MyBatis Spring-Boot-Starter将帮助您将MyBatis与Spring Boot结合使用 要求 master(2.1.x):MyBatis 3.5 +,MyBatis-Spring 2.0+(推荐2.0.4 +),Java 8+和Spring Boot 2.1+ 2.0.x:...

    mybatis-spring-boot-autoconfigure-1.3.2-API文档-中英对照版.zip

    赠送jar包:mybatis-spring-boot-autoconfigure-1.3.2.jar; 赠送原API文档:mybatis-spring-boot-autoconfigure-1.3.2-javadoc.jar; 赠送源代码:mybatis-spring-boot-autoconfigure-1.3.2-sources.jar; 赠送...

    mybatis-spring-boot-autoconfigure-2.1.1-API文档-中文版.zip

    赠送jar包:mybatis-spring-boot-autoconfigure-2.1.1.jar; 赠送原API文档:mybatis-spring-boot-autoconfigure-2.1.1-javadoc.jar; 赠送源代码:mybatis-spring-boot-autoconfigure-2.1.1-sources.jar; 赠送...

    spring boot+mybatis基础demo

    在本项目"spring boot+mybatis基础demo"中,我们将探讨如何使用Spring Boot与MyBatis框架构建一个基本的应用程序。这个示例演示了如何整合这两个流行的技术来处理数据库操作,其中数据源包括SQL Server和Oracle。...

    SpringBoot+MyBatis-Plus+Mysql+Vue实现智慧园区管理系统.zip

    SpringBoot+MyBatis-Plus+Mysql+Vue实现智慧园区管理系统 软件架构 核心框架:Spring Boot 2.4.0 安全框架:JwtPermission 3.1.1 前端:Ant Design Vue 1.6.2 持久层框架:MyBatis-Plus 3.4.1 关系型数据库: Mysql ...

    spring boot+spring cloud+spring mvc+mybatis

    Spring Boot、Spring Cloud、Spring MVC和MyBatis是Spring生态系统中的关键组成部分,它们各自扮演着不同的角色,共同构建了一个完整的微服务架构。 1. **Spring Boot**:Spring Boot简化了Spring应用程序的初始...

    mybatis-spring-boot-starter-3.0.1.jar

    MyBatis Spring Boot Starter.jar 各个版本,免费下载。 MyBatis Spring Boot Starter.jar 起步依赖和自动配置。

    mybatis-spring-boot-autoconfigure-2.1.3-API文档-中文版.zip

    赠送jar包:mybatis-spring-boot-autoconfigure-2.1.3.jar 赠送原API文档:mybatis-spring-boot-autoconfigure-2.1.3-javadoc.jar 赠送源代码:mybatis-spring-boot-autoconfigure-2.1.3-sources.jar 包含翻译后...

    mybatis-spring-boot-starter-2.1.4.jar

    mybatis-spring-boot-starter-2.1.4.jarmybatis-spring-boot-starter-2.1.4.jar

    开源框架面试题系列:Spring+SpringMVC+MyBatis

    在IT行业中,开源框架是构建复杂应用程序的基础,而Spring、SpringMVC和MyBatis作为Java领域的三大核心框架,它们的熟练掌握对于开发者来说至关重要。本系列主要关注这些框架在面试中的常见问题,旨在帮助求职者提升...

    spring-boot_mysql_mybatis_druid

    在IT领域,Spring Boot、MySQL、MyBatis和Druid是常见的开发工具和技术,它们各自在Web应用开发中扮演着重要角色。让我们深入探讨一下这些技术及其整合。 **Spring Boot** 是一个基于Spring框架的快速开发工具,它...

    spring-boot-mybatis:Spring Boot 2 整合 Mybatis

    《Spring Boot 2 整合 Mybatis:深度解析与实战指南》 在现代Java开发中,Spring Boot 和 Mybatis 的整合已经成为一个常见的选择,因为它们分别提供了强大的框架管理和灵活的数据持久化能力。Spring Boot 以其简化...

    尚硅谷 4月份MyBatis视频教程(国内首套:源码级讲授的MyBatis视频)最新更新

    尚硅谷的这套MyBatis视频教程是国内首套源码级讲授的MyBatis视频教程,通过本教程的学习,不仅可以深入了解MyBatis的基本使用和高级特性,还能掌握如何与Spring框架集成以及如何开发MyBatis插件等内容。对于想要深入...

Global site tag (gtag.js) - Google Analytics