EL param與requestScope的區別

${param.name} 等價於 request.getParamter("name"),通常是從頁面或者客戶端獲取的內容, 程序員

${requestScope.name} 等價於 request.getAttribute("name"),通常是從服務器段傳過來的,能夠傳到客戶端也能夠傳到服務器裏面(即,方法1傳到方法2,服務器內部的傳輸) 服務器


pageContext.request是一個具體的對象,在你的http請求過程當中存在。 
requestScope是一個定義, 代表一個http請求的整個聲明週期,它只是一個定義而已,不是一個對象。 EL中你能夠在這個週期中放置、獲取對象。(固然,其實真正的操做也是針對request對象的)。 jsp

requestScope一般是將某個變量或者對象在servlet或者acion中經過request.setAttribute()方法放入到request對象中,而後在頁面中使用requestScope來進行數據的顯示的
而request.getparameter則是則是更多的用在servlet或者action中,它的做用是接受表單提交來的數據,好比你的jsp頁面中的表單提交的數據。
二者的區別是:requestScope更多的用於展現頁面,從request對象中取出對象或者變量來顯示,而request中的對象或者變量也是程序員經過手動的方式request.setAttribute方法來放入request對象中的
而request.getparameter則更多的應用於後臺的方法中,它的參數不是程序員手動設置的,而是由表單來接受用戶輸入的值會隨着用戶的請求被放入request對象中。 spa

request.getParameter 和request.getAttribute
1.經過地址欄傳遞的參數只能經過getParameter 接收
2.getAttribute獲取的是Object,getParameter 是String 對象

相關文章
相關標籤/搜索