java - springmvc 用modelandview 重定向到一個requestmapping 并攜帶一個對象類型的參數(shù) 。
問題描述
請輸入代碼 ModelAndView mv = new ModelAndView('redirect:/add_shopping_cart_success.do');//這個是重定向到的請求// formcart是需要傳遞的對象參數(shù) mv.addObject(formcart);return mv;} @RequestMapping('add_shopping_cart_success') public String add_shopping_cart_success(T_MALL_SHOPPINGCAR formcart, HttpSession session, ModelMap map) { // 用formcart 接不到
請輸入代碼 ModelAndView mv = new ModelAndView(
'redirect:/add_shopping_cart_success.do');//這個是重定向到的請求// 這樣傳的話下面能接到 就是會在瀏覽器顯示所有參數(shù) mv.addObject('sku_mch',formcart.getSku_mch()); mv.addObject('sku_jg',formcart.getSku_jg()); mv.addObject('sku_tp',formcart.getShp_tp()); mv.addObject('tjshl',formcart.getTjshl()); mv.addObject('shp_id',formcart.getShp_id()); mv.addObject('sku_id',formcart.getSku_id());return mv;
}
@RequestMapping('add_shopping_cart_success')public String add_shopping_cart_success(T_MALL_SHOPPINGCAR formcart,HttpSession session, ModelMap map) {
問題解答
回答1:方式一:自己手動拼接url
new ModelAndView('redirect:/toList?param1='+value1+'¶m2='+value2);這樣有個弊端,就是傳中文可能會有亂碼問題。 方式二:用RedirectAttributes,這個是發(fā)現(xiàn)的一個比較好用的一個類這里用它的addAttribute方法,這個實際上重定向過去以后你看url,是它自動給你拼了你的url。使用方法: attr.addAttribute('param', value);return 'redirect:/namespace/toController';這樣在toController這個方法中就可以通過獲得參數(shù)的方式獲得這個參數(shù),再傳遞到頁面。過去的url還是和方式一一樣的。
相關(guān)文章:
1. java - 在用戶不登錄的情況下,用戶如何添加保存到購物車?2. java - spring boot 如何打包成asp.net core 那種獨立應(yīng)用?3. android - SwipeRefreshLayout5.0以下不兼容4. datetime - Python如何獲取當(dāng)前時間5. 安全性測試 - nodejs中如何防m(xù)ySQL注入6. html - eclipse 標(biāo)簽錯誤7. javascript - nginx反向代理靜態(tài)資源403錯誤?8. javascript - webpack 分割加載代碼后,react 界面不更新9. javascript - 關(guān)于apply()與call()的問題10. python文檔怎么查看?
