java - springmvc 用modelandview 重定向到一個(gè)requestmapping 并攜帶一個(gè)對(duì)象類型的參數(shù) 。
問題描述
請(qǐng)輸入代碼 ModelAndView mv = new ModelAndView('redirect:/add_shopping_cart_success.do');//這個(gè)是重定向到的請(qǐng)求// formcart是需要傳遞的對(duì)象參數(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 接不到
請(qǐng)輸入代碼 ModelAndView mv = new ModelAndView(
'redirect:/add_shopping_cart_success.do');//這個(gè)是重定向到的請(qǐng)求// 這樣傳的話下面能接到 就是會(huì)在瀏覽器顯示所有參數(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:方式一:自己手動(dòng)拼接url
new ModelAndView('redirect:/toList?param1='+value1+'¶m2='+value2);這樣有個(gè)弊端,就是傳中文可能會(huì)有亂碼問題。 方式二:用RedirectAttributes,這個(gè)是發(fā)現(xiàn)的一個(gè)比較好用的一個(gè)類這里用它的addAttribute方法,這個(gè)實(shí)際上重定向過去以后你看url,是它自動(dòng)給你拼了你的url。使用方法: attr.addAttribute('param', value);return 'redirect:/namespace/toController';這樣在toController這個(gè)方法中就可以通過獲得參數(shù)的方式獲得這個(gè)參數(shù),再傳遞到頁(yè)面。過去的url還是和方式一一樣的。
相關(guān)文章:
1. docker-compose中volumes的問題2. golang - 用IDE看docker源碼時(shí)的小問題3. dockerfile - [docker build image失敗- npm install]4. angular.js - angular內(nèi)容過長(zhǎng)展開收起效果5. mysql - 記錄開始時(shí)間和結(jié)束時(shí)間,表字段類型用timestamp還是datetime?6. 表單提交驗(yàn)證,沒反應(yīng),求老師指點(diǎn)7. node.js - 微信的自動(dòng)回復(fù)問題8. 用Python調(diào)用api之后,沒有輸出該如何解決?9. 老師,樣式?jīng)]有變呀?10. mysql函數(shù)unix_timestamp如何處理1970.1.1以前的數(shù)據(jù)?

網(wǎng)公網(wǎng)安備