您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“Request與Session的存值取值操作方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Request與Session的存值取值操作方法”吧!
request可以直接set進(jìn)去
request.setAttribute("request", value);
"${request}" ------------ "${requestScope.request}"
或者想獲取key值中某一個(gè)valueBean對(duì)象
"${request.name}"
session需要先get一下獲取session然后才能set進(jìn)去key,value值
request.getSession().setAttribute("session", value); ---------------------------------------------------- HttpSession session = request.getSession(); session.setAttribute("session", value);
"${sessionScope.session}"
說簡(jiǎn)單點(diǎn) request對(duì)象和session對(duì)象的最大區(qū)別是生命周期。
request范圍較小一些,只是一個(gè)請(qǐng)求。
request對(duì)象的生命周期是針對(duì)一個(gè)客戶端(說確切點(diǎn)就是一個(gè)瀏覽器應(yīng)用程序)的一次請(qǐng)求,當(dāng)請(qǐng)求完畢之后,request里邊的內(nèi)容也將被釋放點(diǎn) 。
簡(jiǎn)單說就是你在頁面上的一個(gè)操作,request.getParameter()就是從上一個(gè)頁面中的url、form中獲取參數(shù)。
但如果一個(gè)request涉及多個(gè)類,后面還要取參數(shù),可以用request.setAttribute()和request.getAttribute()。
但是當(dāng)結(jié)果輸出之后,request就結(jié)束了。
session可以跨越很多頁面。
而session的生命周期也是針對(duì)一個(gè)客戶端,但是卻是在別人設(shè)置的會(huì)話周期內(nèi)(一般是20-30分鐘),session里邊的內(nèi)容將一直存在,即便關(guān)閉了這個(gè)客戶端瀏覽器 session也不一定會(huì)馬上釋放掉的。
可以理解是客戶端同一個(gè)IE窗口發(fā)出的多個(gè)請(qǐng)求。
這之間都可以傳遞參數(shù),比如很多網(wǎng)站的用戶登錄都用到了。
比較
request占用資源比較少,安全性也比較高,可是相對(duì)來說缺乏持續(xù)性。
session則相對(duì)來說對(duì)資源的消耗會(huì)大點(diǎn),安全性相對(duì)來說也會(huì)稍微低點(diǎn),可是它能實(shí)現(xiàn)比如會(huì)話跟蹤技術(shù)。
如果可以使用request的情況下,盡量使用request 因?yàn)橄鄬?duì)于服務(wù)器來說資源的消耗還是比較重要的。
在傳遞頁面過程中request傳遞到下一頁面就不能再傳遞了,而sesison卻不如此,即request僅限于2個(gè)相鄰的頁面
每按一個(gè)網(wǎng)頁上的一個(gè)鏈接就是一個(gè)新的request,當(dāng)服務(wù)器返回給瀏覽器一個(gè)response時(shí),request就結(jié)束了,此時(shí)保存在request中的對(duì)象就不存在了,
但是當(dāng)你用一個(gè)瀏器連到服務(wù)器上時(shí)application-server會(huì)新開一個(gè)session給你,當(dāng)連接超時(shí)或?yàn)g覽器關(guān)閉時(shí)session才銷毀。
所以說作用的范圍是不一樣,session也就可以跟蹤用戶的狀態(tài)。
session相當(dāng)于是一個(gè)客戶端的全局變量,
比如A機(jī)與服務(wù)器第一次訪問時(shí)設(shè)置session.setAttribute("aaa")="ComputerA".則在A機(jī)訪問繼續(xù)訪問的任意一個(gè)頁面都可以取的session.getAttribute("aaa")的值是ComputerA;
request是某一次訪問的局域變量,
生命周期只是一次請(qǐng)求。因此login的變量應(yīng)該放在session中
到此,相信大家對(duì)“Request與Session的存值取值操作方法”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。