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方法訪問 */ @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類型:要求頁(yè)面上input框的name屬性名稱必須等于pojo的屬性名稱 public ModelAndView updateitem(Items items){ itemsService.updateitems(items); //不可以加斜杠 解析不了 itemList.action return new ModelAndView(new RedirectView("itemList.action")); }
7.重定向
@RequestMapping("/updateitem") //spirngMvc可以直接接收pojo類型:要求頁(yè)面上input框的name屬性名稱必須等于pojo的屬性名稱 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)文章
Shiro + JWT + SpringBoot應(yīng)用示例代碼詳解
這篇文章主要介紹了Shiro (Shiro + JWT + SpringBoot應(yīng)用),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06SpringBoot中讀取jar包中的resources目錄下的文件的三種方式
這篇文章給大家總結(jié)了SpringBoot讀取 jar 包中的 resources 目錄下的文件的三種方式,文中有詳細(xì)的代碼示例供大家參考,,需要的朋友可以參考下2023-06-06通過java.util.TreeMap源碼加強(qiáng)紅黑樹的理解
通過分析java.util.TreeMap源碼來對(duì)經(jīng)典問題紅黑樹加強(qiáng)理解和理清思路。2017-11-11SpringCloud openfeign相互調(diào)用實(shí)現(xiàn)方法介紹
在springcloud中,openfeign是取代了feign作為負(fù)載均衡組件的,feign最早是netflix提供的,他是一個(gè)輕量級(jí)的支持RESTful的http服務(wù)調(diào)用框架,內(nèi)置了ribbon,而ribbon可以提供負(fù)載均衡機(jī)制,因此feign可以作為一個(gè)負(fù)載均衡的遠(yuǎn)程服務(wù)調(diào)用框架使用2022-11-11Java設(shè)計(jì)模式七大原則之合成復(fù)用原則詳解
合成復(fù)用原則(Composite Reuse Principle),即盡量使用組合/聚合的方式,而不是使用繼承。本文將為大家具體介紹一下Java設(shè)計(jì)模式七大原則之一的合成復(fù)用原則,需要的可以參考一下2022-02-02在SpringBoot中無縫整合Dubbo的實(shí)現(xiàn)過程
微服務(wù)架構(gòu)已經(jīng)成為現(xiàn)代應(yīng)用開發(fā)的熱門趨勢(shì),而Dubbo作為一款強(qiáng)大的分布式服務(wù)框架,與Spring?Boot的結(jié)合是構(gòu)建高性能微服務(wù)應(yīng)用的理想選擇,本文將詳細(xì)介紹如何在SpringBoot中無縫整合Dubbo,需要的朋友可以參考下2024-01-01