【SpringMVC】常用注解:@RequestParam

1.作用

如果控制器标注的方法的参数名称与前端传递过来的参数名称不一致,使得SpringMVC无法自动启动,那么我们可以使用该注解实现前后端参数的绑定。

2.相关属性

value/name:这两个属性都是一个作用,都是描述参数的名称,也就是前端传递过来的参数的名称。

required:默认值为true.标识当前的参数是必须携带的,如果前端没有携带该参数,就会报404的异常。如果是false就是不必须的

defaultValue:默认值 如果前端没有提交参数(null),就使用默认值替代。

3.演示

首先先定义一个超链接

复制代码
<a 
href="${pageContext.request.contextPath}demo1/testRequestParam?
 username=eric&address=china">[测试RequestParam注解]</a>

控制器代码

复制代码
@RequestMapping("testRequestParam")
public String testRequestParam(
    @RequestParam("username") String name, 
    @RequestParam(value = "address", required = false, defaultValue = "ENG") String addr) {
    System.out.println("username:" + name + "address:" + addr);
    return "success";
}

前端的参数名称分别为username和address,如果只有一个属性时,默认是value或name。所以可写可不写。

相关推荐
NE_STOP1 小时前
MyBatis-plus进阶之映射与条件构造器
java
Seven974 小时前
NIO的零拷贝如何实现高效数据传输?
java
架构师沉默18 小时前
别又牛逼了!AI 写 Java 代码真的行吗?
java·后端·架构
后端AI实验室1 天前
我把一个生产Bug的排查过程,交给AI处理——20分钟后我关掉了它
java·ai
凉年技术1 天前
Java 实现企业微信扫码登录
java·企业微信
狂奔小菜鸡1 天前
Day41 | Java中的锁分类
java·后端·java ee
hooknum1 天前
学习记录:基于JWT简单实现登录认证功能-demo
java
程序员Terry1 天前
同事被深拷贝坑了3小时,我教他原型模式的正确打开方式
java·设计模式
NE_STOP1 天前
MyBatis-缓存与注解式开发
java
码路飞1 天前
不装 OpenClaw,我用 30 行 Python 搞了个 QQ AI 机器人
java