@RequestParam和@Param注解的学习

本文详细解析了@RequestParam和@Param注解的使用方法及其参数配置,包括如何将请求参数绑定到控制器方法上,以及在SQL语句中正确使用参数避免SQL注入风险。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

@RequestParam
作用:将请求参数绑定到你控制器的方法参数上
@RequestParam(name = “id”, required = true) String userId

参数:
1、name的别名为value,value的别名为name 所以两者等同
2、required:是否包含该参数,默认为true,表示该请求路径中必须包含该参数,如果不包含就报错
3、defaultValue:默认参数值,如果设置了该值,required=true将失效,自动为false

@Param
作用:@Param注解的作用是给参数命名,参数命名后就能根据名字得到参数值,正确的将参数传入sql语句中(一般通过#{}的方式,${}会有sql注入的问题)

说明:
1、当你使用了使用@Param注解来声明参数时,如果使用 #{} 或 ${} 的方式都可以,当你不使用@Param注解来声明参数时,必须使用使用 #{}方式。如果使用 ${} 的方式,会报错。
2、不使用@Param注解时,最好传递 Javabean。在SQL语句里就可以直接引用JavaBean的属性,而且只能引用JavaBean存在的属性。

注:在不使用@Param注解的时候,函数的参数只能为一个,并且在查询语句取值时只能用#{},且其所属的类必须为Javabean,而使用@Param注解则可以使用多个参数,在查询语句中使用时可以使用#{}或者${}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值