springmvc之RedirectAttributes重定向带参数设置

今天项目需要带参数重定向,用到RedirectAttributes

配置如下:

springmvc配置文件需要添加 

登录controller设置

@RequestMapping(method=RequestMethod.POST)
public String login(String username, String password,RedirectAttributes model, HttpServletRequest request){
		
		try {
			if(request.getSession().getAttribute("user") == null){
				userService.saveUser(username, password);
				request.getSession().setAttribute("user", username);
				model.addFlashAttribute("username", username);//get请求但参数不可见
				return "redirect:/login";
			}
		} catch (Exception e) {
			e.printStackTrace();
			logger.debug(e);
		}
		//返回根路径
		return "redirect:/";
}

重定向后的controller设置

@RequestMapping(method=RequestMethod.GET)
public String login(@ModelAttribute("username") String username, HttpServletRequest request, Model model){
	ShiroUser user = userService.findByUserName(username);
	model.addAttribute("message","欢迎"+user.getUsername());
	logger.debug("登录成功");
		
	return "login/success";
}

接受重定向参数@ModelAttribute("username") String username @ModelAttribute("username") 必须加上 不然不能接受到参数






你可能感兴趣的:(spring)