成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

用JSP控制Cookie的讀和寫操作

開發 前端
本文向大家描述一下如何用JSP操作Cookie,Cookie應該是一種應用較久的技術了。早在HTML剛剛出現的時候,在每個獨立的頁面之間沒有辦法記錄和標識不同的用戶。

當用戶訪問網頁時,它能夠在訪問者的機器上創立一個文件,我們把它叫作Cookie,寫一段內容進去,來標識不同的用戶。如果下次用戶再訪問這個網頁的時候,它又能夠讀出這個文件里面的內容,這樣網頁就知道上次這個用戶已經訪問過該網頁了。

用JSP操作Cookie

一、前言

  說起來,Cookie應該是一種應用較久的技術了。早在HTML剛剛出現的時候,在每個獨立的頁面之間沒有辦法記錄和標識不同的用戶。后來人們就發明了Cookie技術,當用戶訪問網頁時,它能夠在訪問者的機器上創立一個文件,我們把它叫作Cookie,寫一段內容進去,來標識不同的用戶。如果下次用戶再訪問這個網頁的時候,它又能夠讀出這個文件里面的內容,這樣網頁就知道上次這個用戶已經訪問過該網頁了。

  雖然現在網頁的制作技術比起幾年以前已經發展了許多。不過有些時候,Cookie還是能夠幫我們很多忙的。接下來,我們就來看看,如何在寫JSP文件的時候,用JSP操作Cookie.
  
二、寫入Cookie

  其實用JSP操作Cookie是非常簡單的,我們來看下面一段JSP程序:

  1. <html> 
  2.   <head>……(中間略)  
  3.   </head> 
  4.   <body> 
  5.   <%  
  6.   StringcookieName="Sender";  
  7.   Cookiecookie=newCookie(cookieName,"Test_Content");  
  8.   cookie.setMaxAge(10);  
  9.   response.addCookie(cookie);  
  10.   %> 
  11.   ……(其他內容)  
  12.   </body> 
  13.   </html> 
  14.  

   這樣我們就設置了一個Cookie,很簡單吧?

  我們來仔細研究一下這段代碼:

  1.   Cookiecookie=newCookie(cookieName,"Test_Content");  
  2.  

  這一行建立了一個Cookie對象,初始化有兩個參數,***個參數cookieName定義了Cookie的名字,后一個參數,也是一個字符串,定義了Cookie的內容。也就是我們希望網頁在用戶的機器上標識的文件內容。

接下來一行:cookie.setMaxAge(10),調用了Cookie中的setMaxAge方法,設定Cookie在用戶機器硬盤上的存活期為10秒。一個Cookie在用戶的硬盤里面存在的時間并不是無限期的,在建立Cookie對象的時候,我們必須制定Cookie的存活期,超過了這個存活期后,Cookie文件就不再起作用,會被用戶的瀏覽器自行刪除。如果我們希望用戶在下次訪問這個頁面的時候,Cookie文件仍然有效而且可以被網頁讀出來的話,我們可以將Cookie的存活期設得稍微長一些。比如cookie.setMaxAge(365*24*60*60)可以讓Cookie文件在一年內有效。#p#

三、讀出Cookie

  Cookie文件創建好后,自然還需要我們把它讀出來,否則我們不是白費力氣嗎?接下來我們看看如何讀出在用戶硬盤上的Cookie.

  1. <html> 
  2.   <head>……(中間略)  
  3.   </head> 
  4.   <body> 
  5.   <tablebordertableborder=1> 
  6.   <tr><td>Name</td><td>value</td></tr> 
  7.   <%  
  8.   Cookiecookies[]=request.getCookies();  
  9.   CookiesCookie=null;  
  10.   Stringsvalue=null;  
  11.   Stringsname=null;  
  12.   for(inti=0;i<cookies.length;i++)  
  13.   {  
  14.   sCookie=cookies[i];  
  15.   svalue=sCookie.getValue();  
  16.   sname=sCookie.getName();  
  17.   %> 
  18.   <tr><td><%=sname%></td><td><%=svalue%></td></tr> 
  19.   <%  
  20.   }  
  21.   %> 
  22.   </table>……(其他內容)  
  23.   </body> 
  24.   </html> 
  25.  

 這一小段JSP文件可以讀出用戶硬盤上的所有有效的Cookie,也就是仍然在存活期內的Cookie文件。并用表格的形式列出每個Cookie的名字和內容。

  我們來逐行分析一下這段代碼:

  1.   Cookiecookies[]=request.getCookies()  
  2.  

       我們用request.getCookies()讀出用戶硬盤上的Cookie,并將所有的Cookie放到一個cookie對象數組里面。

  接下來我們用一個循環語句遍歷剛才建立的Cookie對象數組,我們用sCookie=cookies[i]取出數組中的一個Cookie對象,然后我們用sCookie.getValue()和sCookie.getName()兩個方法來取得這個Cookie的名字和內容。

  通過將取出來的Cookie的名字和內容放在字符串變量中,我們就能對其進行各種操作了。在上面的例子里,可通過循環語句的遍歷,將所有Cookie放在一張表格中進行顯示。#p#

四、需要注意的一些問題

  通過上面兩個簡單的例子,可以看到,用JSP進行Cookie的操作,是非常簡單的。不過我們在實際操作中還要注意一些問題:

1.Cookie的兼容性問題

  Cookie的格式有2個不同的版本,***個版本,我們稱為CookieVersion0,是最初由Netscape公司制定的,也被幾乎所有的瀏覽器支持。而較新的版本,CookieVersion1,則是根據RFC2109文檔制定的。為了確保兼容性,JAVA規定,前面所提到的涉及Cookie的操作都是針對舊版本的Cookie進行的。而新版本的Cookie目前還不被Javax.servlet.http.Cookie包所支持。

2.Cookie的內容

  同樣的Cookie的內容的字符限制針對不同的Cookie版本也有不同。在CookieVersion0中,某些特殊的字符,例如:空格,方括號,圓括號,等于號(=),逗號,雙引號,斜杠,問號,@符號,冒號,分號都不能作為Cookie的內容。這也就是為什么我們在例子中設定Cookie的內容為“Test_Content”的原因。

  雖然在CookieVersion1規定中放寬了限制,可以使用這些字符,但是考慮到新版本的Cookie規范目前仍然沒有為所有的瀏覽器所支持,因而為保險起見,我們應該在Cookie的內容中盡量避免使用這些字符。

【編輯推薦】

  1. 使用Javascript巧妙獲取滾動條位置
  2. 深入探究cookie技術在J2ME平臺的應用與實現
  3. IE6.0中使用Javascript支持png格式圖片
  4. Java中的cookie管理庫與J2ME結合
  5. Javascript巧妙解決img做網站異常提交問題

 

責任編輯:佚名 來源: tech.ddvip.com
相關推薦

2021-01-28 18:06:49

JavaScriptCookieWeb

2009-07-01 18:17:32

JSP處理Cookie

2009-07-01 15:13:10

JSP留言板

2009-07-06 16:05:50

JSP特點

2010-10-09 15:31:51

JavaScriptCookie

2009-02-11 10:08:53

Cookie屬性JSP

2009-07-01 18:01:20

JSP代碼塊緩沖OSCache

2024-02-23 08:36:34

Python鼠標鍵盤

2009-07-01 14:32:37

JSP文件操作

2009-07-06 15:34:56

JSP和Servlet

2025-01-03 09:39:04

2009-12-10 17:27:39

PHP操作Cookie

2009-06-18 15:49:31

jQuery插件

2010-08-24 16:07:53

2009-07-08 09:22:03

Servlet和JSP

2009-07-31 16:45:23

ASP.NET數據庫操

2010-06-02 13:13:40

Cassandra

2012-05-04 08:25:35

LinuxUnix

2009-06-15 15:54:53

Java中Cookie

2009-09-02 10:26:23

JSP和BEAN
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品伦精品一区二区三区视频 | 国产精品乱码一区二区三区 | 日韩视频在线观看中文字幕 | 亚洲成人一区二区 | jav成人av免费播放 | 日韩综合一区 | 色婷婷av99xx | 亚洲国内精品 | 天堂在线网 | 国产精品一区一区三区 | 中文在线www | 日韩综合网| 91在线资源 | 日韩精品成人在线 | 日日夜夜天天 | 免费视频一区二区 | 天天干狠狠 | 中文字幕一区二区三区不卡在线 | 在线播放精品视频 | 91在线一区二区三区 | 久久久亚洲一区 | 久久国品片 | 国产视频一区二区 | 中文字幕在线观看视频网站 | 国产精品久久午夜夜伦鲁鲁 | 久久亚洲一区 | 国产农村一级国产农村 | 国产激情91久久精品导航 | 久久久久久国产精品免费免费男同 | 九色www| 中文字幕亚洲视频 | 精品国产免费人成在线观看 | 伊色综合久久之综合久久 | 欧美精品a∨在线观看不卡 国产精品久久国产精品 | 日韩一区二区三区视频在线播放 | 国产精品成人在线播放 | 日韩欧美一区二区三区 | 无码日韩精品一区二区免费 | 欧美一级艳情片免费观看 | 综合久久99 | 日韩av在线免费 |