news 2026/5/11 15:31:42

SpringMVC 参数绑定详解SpringMVC 参数绑定详解(超全面)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SpringMVC 参数绑定详解SpringMVC 参数绑定详解(超全面)

一、什么是参数绑定

参数绑定:

SpringMVC 自动将请求参数赋值给方法参数。

例如:

http://localhost:8080/test?username=admin&age=18

SpringMVC 会自动封装。


二、基本类型绑定

Controller

@RequestMapping("/test") public String test(String username,Integer age){ System.out.println(username); System.out.println(age); return "success"; }

请求地址

http://localhost:8080/test?username=tom&age=20

三、JavaBean 参数绑定

User 实体类

public class User { private String username; private Integer age; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } }

Controller

@RequestMapping("/save") public String save(User user){ System.out.println(user.getUsername()); System.out.println(user.getAge()); return "success"; }

四、数组绑定

Controller

@RequestMapping("/hobby") public String hobby(String[] hobby){ for(String h : hobby){ System.out.println(h); } return "success"; }

请求参数

hobby=篮球&hobby=足球&hobby=羽毛球

五、List 集合绑定

VO 类

public class UserVO { private List<User> list; public List<User> getList() { return list; } public void setList(List<User> list) { this.list = list; } }

前端参数

list[0].username=tom list[0].age=20 list[1].username=jack list[1].age=18

六、@RequestParam 注解

基本使用

@RequestMapping("/demo") public String demo(@RequestParam("name") String username){ System.out.println(username); return "success"; }

请求地址

/demo?name=admin

七、@RequestBody 注解

接收 JSON 数据

@RequestMapping("/json") public String json(@RequestBody User user){ System.out.println(user.getUsername()); return "success"; }

JSON 数据

{ "username":"admin", "age":20 }

八、RESTful 风格

什么是 RESTful

RESTful 风格:

通过 URL 表示资源。

例如:

/user/1 /user/2 /user/3

九、@PathVariable 使用

@RequestMapping("/delete/{id}") public String delete(@PathVariable("id") Integer id){ System.out.println(id); return "success"; }

请求地址

/delete/1

十、面试题

1、@RequestParam 和 @PathVariable 区别?

@RequestParam

用于获取请求参数。

?id=1

@PathVariable

用于获取路径参数。

/user/1

十一、总结

参数绑定是 SpringMVC 最核心的内容之一。

重点掌握:

  • 基本类型绑定

  • JavaBean 绑定

  • 集合绑定

  • @RequestParam

  • @RequestBody

  • RESTful

  • @PathVariable

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/11 15:24:46

从网页到知识库:如何用MarkDownload重塑你的信息收集流程

从网页到知识库&#xff1a;如何用MarkDownload重塑你的信息收集流程 【免费下载链接】markdownload A Firefox and Google Chrome extension to clip websites and download them into a readable markdown file. 项目地址: https://gitcode.com/gh_mirrors/ma/markdownload…

作者头像 李华
网站建设 2026/5/11 15:23:46

如何高效管理音乐歌词?这款开源工具让你告别手抄时代

如何高效管理音乐歌词&#xff1f;这款开源工具让你告别手抄时代 【免费下载链接】163MusicLyrics 云音乐歌词获取处理工具【网易云、QQ音乐】 项目地址: https://gitcode.com/GitHub_Trending/16/163MusicLyrics 在数字音乐时代&#xff0c;歌词不仅是理解歌曲内涵的关…

作者头像 李华
网站建设 2026/5/11 15:23:45

从U盘取证到镜像分析:用FTK Imager制作DD镜像后的完整证据链处理流程

从U盘取证到镜像分析&#xff1a;构建完整数字证据链的专业实践 当一块SanDisk U盘被标记为潜在证据载体时&#xff0c;专业取证人员面临的首要挑战是如何在不破坏原始数据的前提下&#xff0c;完整提取并固化数字证据。这个过程远不止于简单的数据复制&#xff0c;而是需要构建…

作者头像 李华