1. 程式人生 > >Spring MVC Web請求提交資料

Spring MVC Web請求提交資料

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");

		}