@RequestMapping(value = "/submit")
public String submit(RedirectAttributes attr,HttpServletRequest request) throws IOException {
/*通過RequestContextHolder獲取request,(ServletRequestAttributes)(RequestContextHolder.getRequestAttributes())).getRequest()*/
//方法1:通過request獲取到flashMap,把參數設置到flashMap中,spring會自動將其設置到model中
FlashMap flashMap = (FlashMap)request.
getAttribute(DispatcherServlet.OUTPUT_FLASH_MAP_ATTRIBUTE);
flashMap.put("name", "張三丰");
//方法2:通過傳入的attr參數的addFlashAttribute方法保存到FlashMap中,和方法一效果一樣
attr.addFlashAttribute("ordersId", "1234");
//方法3:通過attr參數的addAttribute方法設置,這樣設置的參數不會保存在FlashMap中,而是會保存到url中
attr.addAttribute("local","zh-cn");
return "redirect:showorders ";
}
@RequestMapping(value = "/showorders")//用註解ModelAttribute把model中的參數傳入
public String showOrders(@ModelAttribute("name")String name,@ModelAttribute("ordersId")String ordersId,Model model,String local) throws IOException {
logger.info("name:{},ordersId:{},local:{}",new Object[]{name,ordersId,local});
return "orders";
}
springMVC重定向redirect傳遞參數
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.