成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

jsp/servlet會(huì)話(huà)是什么意思-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關(guān)jsp/servlet會(huì)話(huà)是什么意思的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧。

成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),龍?zhí)镀髽I(yè)網(wǎng)站建設(shè),龍?zhí)镀放凭W(wǎng)站建設(shè),網(wǎng)站定制,龍?zhí)毒W(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,龍?zhí)毒W(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿(mǎn)足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶(hù)成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

 客戶(hù)端打開(kāi)與服務(wù)器的連接,發(fā)出請(qǐng)求直到服務(wù)器響應(yīng)客戶(hù)端請(qǐng)求的全過(guò)程稱(chēng)之為會(huì)話(huà) 。

瀏覽器與服務(wù)器之間的通信是通過(guò)HTTP協(xié)議進(jìn)行通信的,而HTTP協(xié)議是”無(wú)狀態(tài)”的協(xié)議,它不能保存客戶(hù)的信息,即一次響應(yīng)完成之后連接就斷開(kāi)了,下一次的請(qǐng)求需要重新連接,當(dāng)用戶(hù)在同一網(wǎng)站的多個(gè)頁(yè)面之間轉(zhuǎn)換時(shí),根本無(wú)法確定是否是同一個(gè)客戶(hù),會(huì)話(huà)跟蹤技術(shù)就可以實(shí)現(xiàn)這種要求 。

Cookie

服務(wù)器在響應(yīng)請(qǐng)求時(shí)可以將一些數(shù)據(jù)以"鍵-值"對(duì)的形式通過(guò)響應(yīng)信息保存在客戶(hù)端。當(dāng)瀏覽器再次訪問(wèn)相同的應(yīng)用時(shí),會(huì)將原先的存有session ID的Cookie通過(guò)請(qǐng)求信息帶到服務(wù)器端,網(wǎng)絡(luò)服務(wù)器通過(guò)識(shí)別唯一的session ID來(lái)代表每個(gè)客戶(hù)端,從而識(shí)別這個(gè)客戶(hù)端接下來(lái)的請(qǐng)求。

Cookie不是內(nèi)置對(duì)象,需要自己創(chuàng)建Cookie的實(shí)例。是服務(wù)器往客戶(hù)端寫(xiě)的一段文本信息,該信息是可以修改的,所以一般情況cookie會(huì)存儲(chǔ)一些非敏感信息,當(dāng)客戶(hù)端再次請(qǐng)求服務(wù)器的時(shí)候,會(huì)將Cookie以請(qǐng)求頭的方式發(fā)送到服務(wù)器,這個(gè)時(shí)候服務(wù)器就能區(qū)分是誰(shuí)在訪問(wèn)了。

用于會(huì)話(huà)跟蹤的Cookie叫做會(huì)話(huà)Cookie。Servlet規(guī)范中會(huì)話(huà)跟蹤的cookie名字必須是JSESSIONID,保存在瀏覽器的內(nèi)存中。

Cookie可以用于保持用戶(hù)的會(huì)話(huà)狀態(tài),但Cookie信息保存在客戶(hù)端,存在較大的安全隱患,且一般瀏覽器對(duì)Cookie的數(shù)目及數(shù)據(jù)大小有嚴(yán)格的限制。在Web應(yīng)用中,一般情況下通過(guò)HttpSession對(duì)象保持會(huì)話(huà)狀態(tài)

Cookie cookie = new Cookie("鍵", "值");       //創(chuàng)建cookie
cookie.setMaxAge(60*60*24);                 //設(shè)置cookie的有效期
cookie.setPath("/");                        //設(shè)置cookie的有效范圍(路徑)
response.addCookie(cookie);                 //將cookie寫(xiě)入到客戶(hù)端

Session

Session 是存放在服務(wù)器端的,更加安全。每一個(gè)用戶(hù)都有一個(gè)不同的session,各個(gè)用戶(hù)之間是不能共享的。

Session是依賴(lài)Cookie的,如果Cookie被禁用,那么session也將失效 。

Session技術(shù)則是服務(wù)端的解決方案,它是通過(guò)服務(wù)器來(lái)保持狀態(tài)的。在Java中是通過(guò)調(diào)用HttpServletRequest的getSession方法(使用true作為參數(shù))創(chuàng)建的。在創(chuàng)建了Session的同時(shí),服務(wù)器會(huì)為該Session生成唯一的Session id,而這個(gè)Session id在隨后的請(qǐng)求中會(huì)被用來(lái)重新獲得已經(jīng)創(chuàng)建的Session;在Session被創(chuàng)建之后,就可以調(diào)用Session相關(guān)的方法往Session中增加內(nèi)容了,而這些內(nèi)容只會(huì)保存在服務(wù)器中,發(fā)到客戶(hù)端的只有Session id;當(dāng)客戶(hù)端再次發(fā)送請(qǐng)求的時(shí)候,會(huì)將這個(gè)Session id帶上,服務(wù)器接受到請(qǐng)求之后就會(huì)依據(jù)Session id找到相應(yīng)的Session,從而再次使用之。正式這樣一個(gè)過(guò)程,用戶(hù)的狀態(tài)也就得以保持了。

session.setAttribute(String name,Object obj);       //往session中存放內(nèi)容(通過(guò)鍵和值的形式)
session.getAtrribute(String name);                  //通過(guò)鍵從session中獲取內(nèi)容
session.removeAttribute(String name);               //把存儲(chǔ)在session中的對(duì)象移除
session.invalidate();                               //銷(xiāo)毀session

隱藏表單域

隱藏表單域是將會(huì)話(huà)ID添加到HTML的隱藏表單中(類(lèi)型為hidden的input)。重定向和轉(zhuǎn)發(fā)

通過(guò)<input type="hidden" name="">進(jìn)行信息的傳遞 。通過(guò)表單形式提交到服務(wù)器,但是本身不顯示。

比如第二個(gè)表單中獲取第一個(gè)表單中的內(nèi)容,并以隱藏域( 文本框type為 hidden) 的方式接受第一個(gè)表單中的內(nèi)容,再次傳遞到第三個(gè)表單中。通俗點(diǎn)說(shuō)請(qǐng)求的順序是這樣的:表單一 - - > 表單二 - - >表單三,但是表單三需要用到表單一提交的內(nèi)容,所以就會(huì)需要表單二作為過(guò)渡,把表單一的內(nèi)容以隱藏域的形式保存,然后再傳遞到表單三中。

重寫(xiě)URL

把會(huì)話(huà)ID編碼在URL中。 例:counter.jjsp;jsessionnid=be8d697876787876befdbde898789098980這樣,即使瀏覽器不支持cookie,也能夠?qū)崿F(xiàn)會(huì)話(huà)跟蹤。

對(duì)于URL復(fù)寫(xiě),服務(wù)器從請(qǐng)求的URI中提取出會(huì)話(huà)ID,并把該請(qǐng)求與相應(yīng)的會(huì)話(huà)關(guān)聯(lián)起來(lái),然后在訪問(wèn)會(huì)話(huà)數(shù)據(jù)的時(shí)候,JSP頁(yè)面所進(jìn)行的處理方式就和使用cookie跟蹤會(huì)話(huà)id時(shí)所使用的方式完全相同。所以sesssion的實(shí)現(xiàn)要依靠cookie或URL復(fù)寫(xiě)技術(shù)。

String sessionId = request.getRequestedSessionId();     //獲得sessionId

通過(guò)response對(duì)象的encodeURL(StringURL)實(shí)現(xiàn)URL地值重寫(xiě):

<a href="<%=response.encodeURL("index.jsp") %>"> 
    index頁(yè)面</a>

該方法會(huì)自動(dòng)判斷客戶(hù)端是否支持Cookie。如果客戶(hù)端支持Cookie,會(huì)將URL原封不動(dòng)地輸出來(lái)。如果客戶(hù)端不支持Cookie,則會(huì)調(diào)用encodeURL()方法之后會(huì)自動(dòng)將用戶(hù)Session的id重寫(xiě)到URL中。重寫(xiě)后的輸出可能是這樣的:

a href="index.jsp?jsessionid=0E0C61100AEB06DE6A95EB1CD1DA8158">index頁(yè)面</a>

HttpServletResponse接口定義了兩個(gè)用于URL重寫(xiě)的方法:

encodeURL方法,用于超鏈接和form表單的action屬性中設(shè)置的URL進(jìn)行重寫(xiě)

encodeRedirectURL 方法 用于對(duì)傳遞給HttpServletResponse.sendRedirect()方法的URL進(jìn)行重寫(xiě)

他們根據(jù)請(qǐng)求消息中是否含有Cookie頭字段來(lái)決定是否進(jìn)行url重寫(xiě)。把URL作為參數(shù)傳遞給這兩個(gè)方法,他們就能完成url重寫(xiě),在url后面添加 jsessionid參數(shù)及其值。可以關(guān)閉瀏覽器的Cookie,然后,進(jìn)行實(shí)驗(yàn),在網(wǎng)頁(yè)源文件中查看URL后面是否有jsessionid參數(shù)及其值。

感謝各位的閱讀!關(guān)于jsp/servlet會(huì)話(huà)是什么意思就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

名稱(chēng)欄目:jsp/servlet會(huì)話(huà)是什么意思-創(chuàng)新互聯(lián)
網(wǎng)頁(yè)URL:http://jinyejixie.com/article44/dcpsee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、品牌網(wǎng)站設(shè)計(jì)網(wǎng)站收錄、網(wǎng)站內(nèi)鏈搜索引擎優(yōu)化、網(wǎng)站導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)
厦门市| 榆社县| 岳普湖县| 贞丰县| 武邑县| 封丘县| 石泉县| 台湾省| 尉犁县| 赤水市| 宜城市| 垣曲县| 海原县| 马山县| 鄂托克前旗| 固始县| 乌鲁木齐县| 威信县| 兴山县| 墨竹工卡县| 大英县| 定兴县| 新丰县| 宣汉县| 桓仁| 汾阳市| 如皋市| 安顺市| 岐山县| 阜康市| 毕节市| 阿坝县| 始兴县| 马鞍山市| 南乐县| 平原县| 友谊县| 高尔夫| 罗平县| 尤溪县| 澄江县|