千家信息网

Spring MVC传递接收参数方式有哪些

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇文章主要介绍"Spring MVC传递接收参数方式有哪些",在日常操作中,相信很多人在Spring MVC传递接收参数方式有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对
千家信息网最后更新 2025年01月19日Spring MVC传递接收参数方式有哪些

这篇文章主要介绍"Spring MVC传递接收参数方式有哪些",在日常操作中,相信很多人在Spring MVC传递接收参数方式有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Spring MVC传递接收参数方式有哪些"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

一、通过实体Bean接收请求参数

@RequestMapping("/login")public String login(User user, Model model) {    if ("admin".equals(user.getName())            && "123456".equals(user.getPwd())) {        model.addAttribute("message", "登录成功");        return "main"; // 登录成功,跳转到主页    } else {        model.addAttribute("message", "用户名或密码错误");        return "login";    }}

二、通过处理方法的形参接收请求参数

通过处理方法的参数接收请求参数,就是将表单参数直接写入控制器类对应方法的参数中,即参数名称与请求参数名称完全相同。 接收参数模式适用于GET和POST提交请求

@RequestMapping("/login")public String login(String name, String pwd, Model model) {    if ("admin".equals(user.getName())            && "123456".equals(user.getPwd())) {               model.addAttribute("message", "登录成功");        return "main"; // 登录成功,跳转到跳转到主页    } else {        model.addAttribute("message", "用户名或密码错误");        return "login";    }}

三、通过HttpServletRequest接收请求参数

@RequestMapping("/login")public String login(HttpServletRequest request, Model model) {    String name = request.getParameter("name");    String pwd = request.getParameter("pwd");       if ("admin".equals(name)            && "123456".equals(pwd)) {        model.addAttribute("message", "登录成功");        return "main"; // 登录成功,跳转到 main.jsp    } else {        model.addAttribute("message", "用户名或密码错误");        return "login";    }}

四、通过@PathVariable接收URL中的请求参数

通过 @PathVariable 获取 URL 中的参数,示例代码如下。

@RequestMapping("/login")public String login(@RequestParam String name, @RequestParam String pwd, Model model) {       if ("admin".equals(name)            && "123456".equals(pwd)) {        model.addAttribute("message", "登录成功");        return "main"; // 登录成功,跳转到主页    } else {        model.addAttribute("message", "用户名或密码错误");        return "login";    }}

五、通过@RequestParam接收请求参数

在方法入参处使用 @RequestParam 注解指定其对应的请求参数。@RequestParam 有以下三个参数:

  • value:参数名

  • required:是否必须,默认为 true,表示请求中必须包含对应的参数名,若不存在将抛出异常

  • defaultValue:参数默认值

@RequestMapping("/login")public String login(@RequestParam String name, @RequestParam String pwd, Model model) {       if ("admin".equals(name)            && "123456".equals(pwd)) {        model.addAttribute("message", "登录成功");        return "main"; // 登录成功,跳转到主页    } else {        model.addAttribute("message", "用户名或密码错误");        return "login";    }}

六、通过@ModelAttribute接收请求参数

@ModelAttribute 注释用于将多个请求参数封装到单个实体对象中,以简化数据绑定过程,并自动作为模型数据公开,以便在视图页面表示中使用。 "通过实体bean接收请求参数"简单地将多个请求参数封装到一个实体对象中,而不将它们作为模型数据公开

@RequestMapping("/login")public String login(@ModelAttribute("user") User user, Model model) {       if ("admin".equals(name)            && "123456".equals(pwd)) {               model.addAttribute("message", "登录成功");        return "main"; // 登录成功,跳转到主页    } else {        model.addAttribute("message", "用户名或密码错误");        return "login";    }}

到此,关于"Spring MVC传递接收参数方式有哪些"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

0