@Param注解的使用和解析「建议收藏」

@Param注解的使用和解析「建议收藏」作用:用注解来简化xml配置的时候(比如Mybatis的Mapper.xml中的sql参数引入),@Param注解的作用是给参数命名,参数命名后就能根据名字得到参数值,正确的将参数传入sql语句中(一般通过#{}的方式,${}会有sql注入的问题)。实例说明:1,使用@Param注解  Mapper接口方法:publicintgetUsersDetail(@Param("u…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

作用:用注解来简化xml配置的时候(比如Mybatis的Mapper.xml中的sql参数引入),@Param注解的作用是给参数命名,参数命名后就能根据名字得到参数值,正确的将参数传入sql语句中(一般通过#{}的方式,${}会有sql注入的问题)。

实例说明:

1,使用@Param注解  

Mapper接口方法:

 public int getUsersDetail(@Param("userid") int userid);

Jetbrains全家桶1年46,售后保障稳定

对应Sql Mapper.xml文件:

 <select id="getUserDetail" statementType="CALLABLE" resultMap="baseMap">
          Exec WebApi_Get_CustomerList #{userid}
 </select>

说明:

当你使用了使用@Param注解来声明参数时,如果使用 #{} 或 ${} 的方式都可以,当你不使用@Param注解来声明参数时,必须使用使用 #{}方式。如果使用 ${} 的方式,会报错。

2,不使用@Param注解

不使用@Param注解时,最好传递 Javabean。在SQL语句里就可以直接引用JavaBean的属性,而且只能引用JavaBean存在的属性。

Mapper接口方法:

 public int getUsersDetail(User user);

对应Sql Mapper.xml文件:

 <!--这里直接引用对象属性即可,不需要对象.属性的方式--> 
<select id="getUserDetail" statementType="CALLABLE" resultMap="baseMap">
          Exec WebApi_Get_CustomerList #{userid}
</select>

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/213402.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 鸿蒙树莓派4b,树莓派4B

    鸿蒙树莓派4b,树莓派4B作者:长空无名最近很多科技媒体都报道了树莓派4发布的消息。虽然整个板子做了大幅升级,基础价格却依然是35美元,称的上是业界良心。那号称史上性能最强的树莓派4,到底有哪些亮点呢?一起来看产品图。USB-C供电口1.5GHz四核64位ARMCortex-A72CPU1GB/2GB/4GBLPDDR4SDRAM内存(可选)全吞吐量千兆以太网(真千兆)双频802.11ac无线网络蓝牙5…

    2022年4月30日
    57
  • zuul 网关的用途_Zuul网关

    zuul 网关的用途_Zuul网关Zuul的主要作用:1.路由,进行请求转发。2.鉴权,进行身份认证(安全)。3.限流,限制访问的数量,保证服务器的稳定。除此之外还有以下作用4.负载均衡。5.压力测试。6.监控1.Zuul简单使用1.添加依赖org.springframework.cloudspring-cloud-starter-netflix-zuul2.添加@EnableZuulProxy注解@EnableZuulProx…

    2022年8月15日
    6
  • 大数据中数据采集的几种方式

    大数据中数据采集的几种方式一、采集大数据的方法1.1通过系统日志采集大数据用于系统日志采集的工具,目前使用最广泛的有:Hadoop的Chukwa、ApacheFlumeAFacebook的Scribe和LinkedIn的Kafka等。这里主要学习Flume。Flume是一个高可靠的分布式采集、聚合和传输系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据,同时对数据进行简单处理,并写到诸如文本、HDFS…

    2022年5月20日
    66
  • java 僵尸危机秘籍_《僵尸危机3》通关秘籍

    java 僵尸危机秘籍_《僵尸危机3》通关秘籍关于武器:1一开始给的手枪,子弹无限。2UZI:冲锋枪,一开始100发子弹,以后会更多3Shotgun:单暴,打小僵尸一下就死,BOSS5、6下,以后是连暴4Barrel:油桶,放了以后,打一枪就炸,注意别把自己炸死5Grenade:手榴弹,一扔就OK6walls:是墙,用来堵路的7Claymore:炸弹,放一个,走远点,僵尸走到那就爆了8Rocket:火箭弹:离远点再打,容易自残…

    2025年8月1日
    0
  • Mac和window生成ssh和查看ssh key

    Mac和window生成ssh和查看ssh key

    2022年2月9日
    58
  • CSS3高级选择器用法

    CSS3高级选择器用法CSS3高级选择器用法介绍

    2022年7月27日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号