SpringMvc接收參數(shù)方法總結(jié)(必看篇)
接收參數(shù)的方式:
1.HttpServletRequest方式接收
public ModelAndView test1(HttpServletRequest req){
String userName = req.getParameter("userName");
String password = req.getParameter("password");
System.out.println(userName);
System.out.println(password);
return new ModelAndView("jsp/hello");
}
2.@RequestParam方式
public ModelAndView test2(String userName,
@RequestParam("password") String pwd){
System.out.println(userName+","+pwd);
return new ModelAndView("jsp/hello");
}
3.對(duì)象的方式接收
public ModelAndView test3(User user){
System.out.println(user);
return new ModelAndView("jsp/hello");
}
4.
/**
* 使用ModelAndView傳出參數(shù) 內(nèi)部 HttpServletRequest的Attribute傳遞 到j(luò)sp頁(yè)面
* ModelAndView(String viewName,Map data)data是處理結(jié)果
*/
@RequestMapping("action")
public ModelAndView test4(User user){
Map<String, Object> data = new HashMap<String, Object>();
data.put("user", user);
return new ModelAndView("jsp/hello",data);
}
5. Session的方式
/**
* session存儲(chǔ) 可以使用HttpServletRequest的getSession方法訪問(wèn)
*/
@RequestMapping("action")
public ModelAndView test7(HttpServletRequest req){
HttpSession session = req.getSession();
session.setAttribute("salary", 6000.0);
return new ModelAndView("jsp/hello");
}
6.重定向:
@RequestMapping("/updateitem")
//spirngMvc可以直接接收pojo類(lèi)型:要求頁(yè)面上input框的name屬性名稱(chēng)必須等于pojo的屬性名稱(chēng)
public ModelAndView updateitem(Items items){
itemsService.updateitems(items);
//不可以加斜杠 解析不了 itemList.action
return new ModelAndView(new RedirectView("itemList.action"));
}
7.重定向
@RequestMapping("/updateitem")
//spirngMvc可以直接接收pojo類(lèi)型:要求頁(yè)面上input框的name屬性名稱(chēng)必須等于pojo的屬性名稱(chēng)
public String updateitem(Items items){
itemsService.updateitems(items);
//重定向到action 可以加斜杠 redirect:/itemList.action 解析的了
return "redirect:itemList.action";
}
使用Model和ModelMap的效果一樣,如果直接使用Model,springmvc會(huì)實(shí)例化ModelMap。
如果使用Model則可以不使用ModelAndView對(duì)象,Model對(duì)象可以向頁(yè)面?zhèn)鬟f數(shù)據(jù),View對(duì)象則可以使用String返回值替代。不管是Model還是ModelAndView,其本質(zhì)都是使用Request對(duì)象向jsp傳遞數(shù)據(jù)。
以上這篇SpringMvc接收參數(shù)方法總結(jié)(必看篇)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Spring?Boot中的max-http-header-size配置方式
這篇文章主要介紹了Spring?Boot中的max-http-header-size配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09
Spring Bean的初始化和銷(xiāo)毀實(shí)例詳解
這篇文章主要介紹了Spring Bean的初始化和銷(xiāo)毀,結(jié)合實(shí)例形式詳細(xì)分析了Spring Bean的初始化和銷(xiāo)毀相關(guān)配置、使用方法及操作注意事項(xiàng),需要的朋友可以參考下2019-11-11
Java中鎖的實(shí)現(xiàn)和內(nèi)存語(yǔ)義淺析
這篇文章主要給大家介紹了關(guān)于Java中鎖的實(shí)現(xiàn)和內(nèi)存語(yǔ)義的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-11-11
JAVA HTTP反向代理實(shí)現(xiàn)過(guò)程詳解
這篇文章主要介紹了JAVA HTTP反向代理實(shí)現(xiàn)過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06
Java統(tǒng)計(jì)英文句子中出現(xiàn)次數(shù)最多的單詞并計(jì)算出現(xiàn)次數(shù)的方法
這篇文章主要介紹了Java統(tǒng)計(jì)英文句子中出現(xiàn)次數(shù)最多的單詞并計(jì)算出現(xiàn)次數(shù)的方法,涉及java針對(duì)英文句子的字符串遍歷、轉(zhuǎn)換、正則替換、計(jì)算等相關(guān)操作技巧,需要的朋友可以參考下2018-01-01
java 數(shù)據(jù)結(jié)構(gòu)之棧與隊(duì)列
這篇文章主要介紹了java 數(shù)據(jù)結(jié)構(gòu)之棧與隊(duì)列的相關(guān)資料,這里對(duì)java中的棧和隊(duì)列都做出實(shí)現(xiàn)實(shí)例來(lái)幫助大家理解學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu),需要的朋友可以參考下2017-07-07
關(guān)于JavaEE內(nèi)部類(lèi)的部分注意事項(xiàng)
這篇文章主要介紹了關(guān)于JavaEE內(nèi)部類(lèi)的部分注意事項(xiàng),將一個(gè)類(lèi)定義在另一個(gè)類(lèi)里面或者一個(gè)方法里面,這樣的類(lèi)稱(chēng)為內(nèi)部類(lèi),這是一種封裝思想,那么使用內(nèi)部類(lèi)的時(shí)候要注意些什么呢,讓我們一起來(lái)看看吧2023-03-03

