SpringMVC传递参数时常见的几种方式

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

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

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

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

3、通过HttpServletRequest接收请求参数

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

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

该注解用于将多个请求参数封装到一个实体对象中

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

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

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

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

你可能感兴趣的:(spring,SpringMVC,Spring,传递参数)