转发的时候想传递参数
request.setAttribute("videoCtxPath",videoCtxPath);
return "forward:"+Global.getAdminPath()+"/sites/video/videoSave.do";
接收
String videoCtxPath=(String) request.getAttribute("videoCtxPath");
注意,在 路径后面传递参数是不可以的,比如
return "forward:"+Global.getAdminPath()+"/sites/video/videoSave.do?id=1";
是获取不到id 的。
重定向:
/**
* @author lpj
* @date 2016年7月10日
*/
@Controller
@RequestMapping("/user")
public class DemoController {
@RequestMapping("/login")
// public String login(@RequestParam Map<String, String> user, Model model) {
public String login(@RequestParam Map<String, String> user, RedirectAttributes model) {
System.out.println("用户提交了一次表单");
String username;
if (user.get("name").isEmpty()) {
username = "Tom";
} else {
username = user.get("name");
}
model.addFlashAttribute("msg", username);
// return "home";//此方式跳转,页面刷新会重复提交表单
return "redirect:/user/toHome";
}
@RequestMapping("/toHome")
public String home(@ModelAttribute("msg") String msg, Model model) {
System.out.println("拿到重定向得到的参数msg:" + msg);
model.addAttribute("msg", msg);
return "home";
}
}