亚洲欧洲国产欧美一区精品,激情五月亚洲色五月,最新精品国偷自产在线婷婷,欧美婷婷丁香五月天社区

      考試首頁 | 考試用書 | 培訓課程 | 模擬考場 | 考試論壇  
      全國  |             |          |          |          |          |         
        當前位置:計算機等級 > 二級考試 > Java語言程序設計 > 考試輔導 > 文章內(nèi)容
        

      全國計算機等級考試二級Java重點內(nèi)容(29)

      中華IT學院   【 】  [ 2016年10月29日 ]

        cookie技術(shù)

        a, cookie是什么?

        瀏覽器訪問服務器時,服務器發(fā)送給瀏覽器

        少量的數(shù)據(jù),這些數(shù)據(jù)以set-cookie消息頭的

        方式發(fā)送給瀏覽器。瀏覽器會將set-cookie消

        息頭設置的內(nèi)容保存下來(內(nèi)存或者是硬盤)。

        當瀏覽器再次訪問服務器時,會將之前保存的數(shù)

        據(jù)以cookie消息頭的方式發(fā)送給服務器,通過這

        種機制,可以將瀏覽器與服務器之間交互的數(shù)據(jù)

        保存下來。

        b, 創(chuàng)建cookie

        Cookie cookie = new Cookie(String name,

        String value);

        cookie.setMaxAge(int seconds);

        response.addCookie(cookie);

        c,查詢cookie

        //如果沒有cookie,會返回null

        Cookie[] request.getCookies();

        String cookie.getName();

        String cookie.getValue();

        d,編碼問題

        cookie的值只能是ascii字符,如果出現(xiàn)了非

        ascii字符(比如中文),需要將中文轉(zhuǎn)換成

        對應的ascii字符表示。

        可以使用URLEncoder.encode方法或者

        BASE64Encoder.encode方法來實現(xiàn)轉(zhuǎn)換。

        要注意:

        在查詢時,要使用對應的方法來解碼。

        e, 生存時間

        cookie.setMaxAge(int seconds)

        單位是秒。

        seconds <0: 保存在內(nèi)存里(默認值),只有

        當瀏覽器關閉,cookie才會刪除。

        seconds > 0: 以文件的方式保存在硬盤上,

        超過這個時間,瀏覽器會刪除cookie。

        seconds = 0: 立即刪除cookie。

        如果要刪除一個名叫"username"的cookie:

        Cookie cookie = new Cookie("username","");

        cookie.setMaxAge(0);

        response.addCookie(cookie);

        f, 路徑問題

        瀏覽器在訪問服務器的某個路徑時,會

        先比較cookie的路徑與服務器的路徑,只有

        符合條件的cookie才會發(fā)送給服務器。

        cookie如果沒有調(diào)用setPath方法,則會

        有一個默認的路徑,這個默認的路徑是

        創(chuàng)建該cookie的組件的路徑。

        比如: /web06_3/jsp01/addCookie.jsp

        創(chuàng)建了某個cookie,則該cookie的路徑是:

        /web06_3/jsp01

        瀏覽器會比較cookie的路徑與要訪問的組件

        的路徑,只有當要訪問的組件的路徑是cookie

        的路徑或者及子路徑時,瀏覽器才會發(fā)送該

        cookie組服務器。

        //設置cookie的路徑

        cookie.setPath(String str);

        比如:

        cookie.setPath("/web06_3");這樣設置的

        作用是,該組件生成的cookie,可以被這個應用

        下所有的其它組件訪問到。

        練習:

        寫一個Find_AddCookieServlet,該servlet

        先查詢有沒有一個名叫 userProfile的cookie,如果有,則

        顯示該cookie的值,如果沒有,則創(chuàng)建該cookie。

        new Cookie("userProfile","abc")

        g, cookie的限制

        cookie可以被禁止。

        cookie的大小有限制(大約4k左右,跟

        瀏覽器有關系),數(shù)量也有限制,瀏覽器

        在本地大約能保存300個左右的cookie。

        cookie不安全

        cookie的值只能是字符串

      分享到:
      本文糾錯】【告訴好友】【打印此文】【返回頂部
      將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動訪問考試網(wǎng) | 復制本頁地址,傳給QQ/MSN上的好友 | 申請鏈接 | 意見留言 TOP
      關于本站  網(wǎng)站聲明  廣告服務  聯(lián)系方式  站內(nèi)導航  考試論壇
      Copyright © 2006-2017 中華考試網(wǎng)(Examw.com) All Rights Reserved  營業(yè)執(zhí)照