<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 什么是會話 用戶開一個瀏覽器訪問一個網站,只要不關閉該瀏覽器,不管該用戶點擊多少個超鏈接,訪問多少資源.直到用戶關閉瀏覽器,或者服務器關閉,這整個過程我們稱作一次會話. # cookie ## 工作原理 * 瀏覽器訪問服務器,服務器產生鍵值對形式的cookie. * 通過響應(響應頭set-cookie)返回給瀏覽器. * cookie保存在瀏覽器上,下次訪問服務器的時候根據一定的規則攜(指的就是cookie的路徑)帶不同的cookie,通過請求(請求頭cookie)攜帶,服務器就可以拿到這些cookie. * cookie不支持中文. * cookie不能跨瀏覽器. * cookie銷毀后會刪除所有保存在里面的數據. ## 設置cookie ~~~ //創建cookie Cookie cookie = new Cookie("name", "jack"); //寫回瀏覽器 response.addCookie(cookie); ~~~ ## 獲取cookie * 獲取cookie的名稱:getName(). * 獲取cookie的value:getValue(). ~~~ Cookie[] cookies = request.getCookies(); if (cookies != null) { for (Cookie c : cookies) { if ("name".equals(c.getName())) { System.out.println(c.getValue()); } } } ~~~ ## 設置cookie在瀏覽器端的存活時間和路徑 * 單位是秒,如果秒數為0,則刪除cookie(前提是,必須路徑相同). * 默認路徑: 從根路徑到最后一個"/" 結束. 如在"/dome/user/login" 路徑下設置的cookie,默認路徑是"/dome/user" * 同一路徑下不能有重名的cookie,否則會被覆蓋. * 當方位的URL包含此cookie的path的時候就會攜帶這個cookie,反之不會. 假如cookie路徑是/aa/bb/cc,那么訪問/aa/bb/cc/dd,/aa/bb/cc是會攜帶這個cookie的,如果訪問/aa/bb或者/cc/dd是不會攜帶這個cookie的. ~~~ cookie1.setMaxAge(300); //單位是秒,這里是5分鐘 cookie1.setPath("/user/login"); //設置cookie的路徑 ~~~ ~~~ Cookie cookie1 = new Cookie("akey", "avalue"); Cookie cookie2 = new Cookie("bkey", "bvalue"); Cookie cookie3 = new Cookie("ckey", "cvalue"); Cookie cookie4 = new Cookie("ckey", "dvalue"); //設置cookie的路徑(注意:同一路徑下不能有重名的cookie,有的話會被覆蓋,不同路徑下可以有重名的cookie) cookie3.setPath(request.getContextPath()+"/user/register"); response.addCookie(cookie1); response.addCookie(cookie2); response.addCookie(cookie3); response.addCookie(cookie4); ~~~ 訪問/dome/user/info 可以獲取1,2,4的cookie. 訪問/dome/user可以獲取1,2,3,4的cookie.訪問/dome/user/register可以獲取1,2,3,4的cookie. ## 刪除cookie 1. new 一個新cookie,路徑和name和要刪除的cookie一致,max-age 設置為0,寫回瀏覽器即可進行刪除. # session ## 工作原理 1. 瀏覽器向服務器發送請求. 2. 服務器判斷瀏覽是否攜帶了唯一標識. 3. 若有標識:服務器去查詢session池中是否有對應的標識.若有:直接操作session對象,并把它存入瀏覽器.若無:服務器會為其創建一個私有的內存空間,可以操作session,把它存放到瀏覽器端. 4. 若無標識:服務器會為其創建一個私有的內存空間,可以操作session,把它存放到瀏覽器端(依賴cookie). 5. 創建時機:第一次調用request.getSession()的時候. 6. 銷毀時機: 1.服務器非正常關閉(正常關閉不會丟). 2.超時銷毀:tomcat默認是30分鐘. 3.手動銷毀. sessionid是保存在cookie中的,如果cookie沒有設置存活時間,那么每當瀏覽器關閉之后重新打開這個網頁會創建一個新的sessionid.如果cookie設置了存活時間,那么就會保留這個sessionid. ## 方法 獲取session ~~~ HttpSession session = request.getSession(); ~~~ 獲取sessionID ~~~ session.getId(); ~~~ 設置session存活時間 ~~~ session.setMaxInactiveInterval(秒); ~~~ # 實例 ## 獲取上次訪問時間 ~~~ response.setContentType("text/html;charset=utf-8"); Cookie[] cookies = request.getCookies(); Cookie co = null; if (cookies != null) { //查找cookie for (Cookie c : cookies) { if ("lastTime".equals(c.getName())) { co = c; } } } //判斷是否存在cookie if (co != null) { response.getWriter().print("您上次的訪問時間為:" + co.getValue()); } else { response.getWriter().print("歡迎訪問"); } DateFormat dateInstance = DateFormat.getDateInstance(); String format = dateInstance.format(new Date()); Cookie cookie = new Cookie("lastTime", format); cookie.setMaxAge(3600); response.addCookie(cookie); ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看