前臺到后臺的流程:前臺jsp->后臺:controller控制器層->service業務層->DAO數據訪問層->數據庫model模型層。
從上面流程可知,前臺jsp的數據,想要參與到后臺的業務邏輯運算,關鍵是要先把前臺jsp的數據傳遞到后臺的controller。這個關鍵點涉及到一個術語——“綁定參數”(或稱“綁定數據”),即如何將前臺jsp中的數據綁定為后臺controller類里方法的參數。
在SpringMVC中,“綁定參數”這個過程,需要前臺jsp和后臺controller來配合完成:
1、前臺jsp需要做的:提供表單域(如:輸入框<input type="text" name="userName">、下拉框<select name="province">、單選框<input type="radio" name="sex">、復選框<input type="checkbox"?name="hobbies">),用來保存用戶輸入的多個數據,這類頁面標簽元素務必加上name屬性,表明將這個數據以這個名字set為request的參數(request.setParameter("userName",用戶輸入的用戶名);),全部封裝到request里,然后發送request給后臺的controller;
2、后臺controller需要做的:controller接收到request后,自動通過getRequest.getParameter("userName")、request.getParameter("sex")...取出多個request參數,那如何知道哪個request參數對應controller類里方法的哪個參數?有兩種方法:1.要么把controller類里方法的參數名設為jsp頁面的表單域的name一樣;2.要么用注解@RequestPam來指定:controller類里方法的每個參數前面,加上注解@RequestParam(value="userName",required=false)。
以上兩步做完,就成功完成了“綁定參數”——將前臺jsp的數據,傳遞到后臺的controller。