springMVC----引數處理
阿新 • • 發佈:2018-12-09
springMVC引數處理
一、ModelAndView作用 1、設定轉向地址 2、將底層獲取的資料進行儲存(或者封裝) 3、最後將資料傳遞給view
二、ModelAndView使用 方式一:ModelAndView第一種用法,先建立ModelAndView物件,再通過他的方法去設定與轉發的檢視名
@RequestMapping(value = "/test1", method = RequestMethod.GET)
public ModelAndView test1() {
ModelAndView modelAndView = new ModelAndView("home" );
modelAndView.addObject("name", "test12222");
return modelAndView;
}
ModelAndView(String viewName):viewName name of the View to render, to be resolved by the DispatcherServlet’s ViewResolver
ModelAndView addObject(String attributeName, Object attributeValue):通過key/value的方式繫結資料
方式二:ModelAndView的第二種用法,可以直接通過帶有構造方法ModelAndView(String viewName, String attributeName, Object attributeValue) 來返回資料與轉發的檢視名
public ModelAndView login(@RequestParam("name") String nametest, String pass) {
UserBean user = new UserBean();
user.setName(nametest);
user.setPass(pass);
Map <String, Object> data = new HashMap<String, Object>();
data.put("user", user);
return new ModelAndView("home", data);
}
方式三:ModelAndView自動注入物件
@RequestMapping("/loginbean")
public ModelAndView login(UserBean bean) {
Map<String, Object> data = new HashMap<String, Object>();
data.put("user", bean);
return new ModelAndView("home", data);
}
三、request
方式一:直接通過引數
public String test2(HttpServletRequest reques) {
reques.setAttribute("name_test2", "test2");
return "home";
}
方式二:全域性注入
// request 方式
@RequestMapping("/test3")
public String test3() {
request.setAttribute("name_test3", "test3");
return "home";
}
四、引數動態處理
@RequestMapping("/url/{id}")
public String url1(UserBean bean, @PathVariable("id") Integer id) {
System.out.println(id);
request.setAttribute("user", bean);
request.setAttribute("id", id);
return "home";
}
ps:參考程式碼UserBean.java、HomeController.java