国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

關(guān)于Java Web會(huì)話處理如何工作的困惑。使用servlet API和HttpSession對(duì)象使Cookies和標(biāo)頭的差異變得神秘

瀏覽:120日期:2024-04-18 13:35:38
如何解決關(guān)于Java Web會(huì)話處理如何工作的困惑。使用servlet API和HttpSession對(duì)象使Cookies和標(biāo)頭的差異變得神秘?

您可以閱讀描述Cookies和相關(guān)標(biāo)頭Set-Cookie``Cookie的RFC,并了解它們是什么。

你可以通過(guò)在第7章Servlet規(guī)格,如果你想詳細(xì)了解如何cookie和session有關(guān)系。

您首先需要了解HTTP是無(wú)狀態(tài)協(xié)議。這意味著客戶端發(fā)出的每個(gè)請(qǐng)求都與任何先前或?qū)?lái)的請(qǐng)求無(wú)關(guān)。但是,作為用戶,我們非常希望在與Web應(yīng)用程序交互時(shí)具有某種狀態(tài)。例如,銀行應(yīng)用程序只希望您能夠查看和管理交易。音樂流媒體網(wǎng)站可能希望根據(jù)您已經(jīng)聽到的內(nèi)容推薦一些好的節(jié)奏。

為此,引入Cookie和Session概念。Cookies是鍵值對(duì),但具有特定格式(請(qǐng)參閱鏈接)。會(huì)話是服務(wù)器端實(shí)體,用于存儲(chǔ)跨越服務(wù)器和客戶端之間的多個(gè)請(qǐng)求/響應(yīng)的信息(在內(nèi)存中或持久存儲(chǔ))。

該ServletHTTP會(huì)話使用與名字的cookie JSESSIONID和值標(biāo)識(shí)會(huì)話。

該Servlet容器保持的地圖(YMMV)HttpSession對(duì)象和這些標(biāo)識(shí)符。當(dāng)客戶端第一次發(fā)出請(qǐng)求時(shí),服務(wù)器會(huì)創(chuàng)建一個(gè)HttpSession具有唯一標(biāo)識(shí)符的對(duì)象,并將其存儲(chǔ)在其映射中。然后Set-Cookie在響應(yīng)中添加標(biāo)題。它將cookie的名稱設(shè)置為,JSESSIONID并將其值設(shè)置為剛創(chuàng)建的標(biāo)識(shí)符。

這是服務(wù)器使用的最基本的Cookie。您可以根據(jù)需要設(shè)置任意數(shù)量的信息。該ServletAPI使用該HttpServletResponse#addCookie(Cookie)方法為您簡(jiǎn)化了操作,但是您可以使用該HttpServletResponse#addHeader(String,String)方法自己完成操作。

客戶端接收這些cookie,并將其存儲(chǔ)在某個(gè)地方,通常存儲(chǔ)在文本文件中。向服務(wù)器發(fā)送新請(qǐng)求時(shí),它可以使用請(qǐng)求Cookie標(biāo)頭中的cookie來(lái)通知服務(wù)器它可能已經(jīng)完成了上一個(gè)請(qǐng)求。

當(dāng)Servlet容器收到請(qǐng)求時(shí),它將提取Cookie標(biāo)頭值,并嘗試HttpSession使用JSESSIONIDcookie中的鍵從其映射中檢索對(duì)象。這HttpSession則物體被連接到HttpServletRequest該對(duì)象Servlet容器創(chuàng)建并傳遞給你的Servlet。您可以使用setAttribute(String,Object)和getAttribute(String)方法來(lái)管理狀態(tài)。

解決方法

我正在學(xué)習(xí)Spring安全性和Spring MVC,但是我意識(shí)到我需要首先學(xué)習(xí)jsp Servlet和Java環(huán)境中的常規(guī)Web編程。

我對(duì)HttpServletRequest和HttpServletResponse對(duì)象以及如何使用它們向請(qǐng)求和響應(yīng)對(duì)象添加標(biāo)頭以及它們與會(huì)話的關(guān)系感到困惑。

據(jù)我了解,Cookie就像Content-type和Accept一樣是一種標(biāo)頭。通過(guò)使用特定于使用標(biāo)頭的上下文的方法,java servletapi使得使用標(biāo)頭變得容易。例如:

response.setContentType(String mimeType)response.setContentLength(int lengthInBytes)

我的困惑從這里開始。Cookie不是String或int,它是一個(gè)對(duì)象:

response.addCookie(Cookie cookie)response.getCookies()

由于cookie是標(biāo)頭的一種,因此我不能只使用以下內(nèi)容:

String cookieVal = response.getHeader('cookie')

我很難理解會(huì)話管理及其與HttpServletRequest和HttpServletResponse API的關(guān)系。HttpSession對(duì)象的作用是什么?

HttpSession.getAttribute() // What is this getting??HttpSession.setAttribute('Bla Bla','valuetoset') // What is this setting?

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 国产成人福利美女观看视频 | 久久精品人人爽人人爽快 | 最新国产成人综合在线观看 | 欧美一区二区三区精品国产 | a理论片| 天天视频一区二区三区 | 日本高清专区一区二无线 | 欧美成人一级视频 | 牛人国产偷窥女洗浴在线观看 | 韩国美女爽快一级毛片黄 | 国产三级视频网站 | 国产视频成人 | 午夜三级成人三级 | 日韩一级免费视频 | 国产精品夜色视频一区二区 | 免费看成人www的网站软件 | 国产免费一区二区三区在线 | 国产亚洲精品网站 | 欧美成人免费在线观看 | 久久综合香蕉久久久久久久 | 国产成人免费高清视频 | 日韩字幕 | 亚洲日本在线观看网址 | 99久久国产综合精品网成人影院 | 免费播放国产性色生活片 | 国产精品爱久久久久久久三级 | 成年女人永久免费观看片 | 波多野结衣在线视频观看 | 成年女人黄小视频 | 亚洲免费网站在线观看 | 欧美精品久久久久久久久大尺度 | 国产手机在线小视频免费观看 | 国产亚洲女在线精品 | 自拍偷在线精品自拍偷无码专区 | 久久―日本道色综合久久 | 欧美做暖小视频xo免费 | 美女一级视频 | 久久综合久久综合九色 | 国产成人精品日本亚洲语音2 | 久久免费毛片 | 狠狠色噜狠狠狠狠色综合久 |