【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。所以可写可不写。

相关推荐
Cloud_.4 分钟前
Apifox Helper 自动生成API接口文档
java·ide·intellij-idea
dorabighead2 小时前
重构版:JavaScript 的 new 操作符——从“黑箱仪式”到“亲手造物”的认知跃迁
开发语言·javascript·重构
知识浅谈2 小时前
@Validate 注解的使用-分组案例很有用
java·springboot
Humbunklung2 小时前
C#中通过Response.Headers设置自定义参数
开发语言·c#
Trouvaille ~2 小时前
【Java篇】一法不变,万象归一:方法封装与递归的思想之道
java·开发语言·面向对象·javase·递归·方法·基础入门
Zhava2 小时前
MybatisPlus中的customSqlSegment动态拼接where条件
java·mybatis
极客先躯2 小时前
高级java每日一道面试题-2025年2月26日-框架篇[Mybatis篇]-Mybatis是如何将sql执行结果封装为目标对象并返回的?都有哪些映射形式 ?
java·mybatis·嵌套映射·resulttype属性·resultmap属性·results注解·列名别名
wtrees_松阳2 小时前
【编程向导】-JavaScript-基础语法-类型检测
开发语言·javascript·原型模式
qq_529835353 小时前
Java实现死锁
java·开发语言·python
knightkkzboy3 小时前
《C语言中的“三元精灵”:条件操作符的魔法与奥秘》
c语言·开发语言