Spring MVC Web請求提交資料
阿新 • • 發佈:2018-11-09
Spring MVC Web請求提交資料到控制器有下面幾種方法:
1.使用HttpServletRequest獲取
2.使用@RequestParam註解
3.使用自動機制封裝成Bean物件
4.使用自動機制封裝成Bean物件 定義user實體,屬性名與<form>表單元件的name相同
1.使用HttpServletRequest獲取
String 自動引數注入HttpServletRequest,優點直接,缺點是需要自己處理資料型別
public class TsetController { @Controller @RequestMapping("/demo") public class TestController { // 使用request接收引數 @RequestMapping("/test1.do") public ModelAndView test1(HttpServletRequest request) { String userName = request.getParameter("uaserName"); String password = request.getParameter("password"); System.out.println(userName); System.out.println(password); return new ModelAndView("jsp/hello1"); }
2.使用@RequestParam註解
Spring會自動將表單引數注入到方法引數(名稱一樣),使用@RequestParam註解,對映不一樣
優點引數型別轉換,但可能出現型別轉換異常
2.使用方法引數接收引數 // 後端引數名不同,強轉 @RequestMapping("/test2.do") public ModelAndView test2(String userName, @RequestParam("password") String pwd) { System.out.println(userName); System.out.println(pwd); return new ModelAndView("jsp/hello1"); }
3.使用自動機制封裝成Bean物件
定義user實體,屬性名與<form>表單元件的name相同
4.使用自動機封裝成實體引數例項
在Controller元件處理方法定義User型別引數
// 3.使用物件接收引數
@RequestMapping("/test3.do")
public ModelAndView test3(User user) {
System.out.println(user.getUserName());
System.out.println(user.getPassword());
return new ModelAndView("jsp/hello1");
}