2009年10月10日
JSP中g(shù)etParameter與getAttribute有何區(qū)別?
——getParameter得到的都是String類(lèi)型的。或者是http://a.jsp?id=123中的123,或者是某個(gè)表單提交過(guò)去的數(shù)據(jù)。
——getAttribute則可以是對(duì)象。
——getParameter()是獲取POST/GET傳遞的參數(shù)值;
——getAttribute()是獲取對(duì)象容器中的數(shù)據(jù)值;
——getParameter:用于客戶(hù)端重定向時(shí),即點(diǎn)擊了鏈接或提交按扭時(shí)傳值用,即用于在用表單或url重定向傳值時(shí)接收數(shù)據(jù)用。
——getAttribute:用于服務(wù)器端重定向時(shí),即在sevlet中使用了forward函數(shù),或struts中使用了mapping.findForward。getAttribute只能收到程序用setAttribute傳過(guò)來(lái)的值。
——getParameter()是獲取POST/GET傳遞的參數(shù)值;
——getAttribute()是獲取SESSION的值;
另外,可以用setAttribute,getAttribute發(fā)送接收對(duì)象.而getParameter顯然只能傳字符串。
setAttribute 是應(yīng)用服務(wù)器把這個(gè)對(duì)象放在該頁(yè)面所對(duì)應(yīng)的一塊內(nèi)存中去,當(dāng)你的頁(yè)面服務(wù)器重定向到另一個(gè)頁(yè)面時(shí),應(yīng)用服務(wù)器會(huì)把這塊內(nèi)存拷貝另一個(gè)頁(yè)面所對(duì)應(yīng)的內(nèi)存中。這樣getAttribute就能取得你所設(shè)下的值,當(dāng)然這種方法可以傳對(duì)象。session也一樣,只是對(duì)象在內(nèi)存中的生命周期不一樣而已。
getParameter只是應(yīng)用服務(wù)器在分析你送上來(lái)的request頁(yè)面的文本時(shí),取得你設(shè)在表單或url重定向時(shí)的值。
getParameter 返回的是String, 用于讀取提交的表單中的值;
getAttribute 返回的是Object,需進(jìn)行轉(zhuǎn)換,可用setAttribute設(shè)置成任意對(duì)象,使用很靈活,可隨時(shí)用;
posted on 2009-10-10 16:24
kxbin 閱讀(10339)
評(píng)論(5) 編輯 收藏 所屬分類(lèi):
J2EE