1. 程式人生 > 其它 >會話技術_概述以及Cookie快速入門

會話技術_概述以及Cookie快速入門

會話技術_概述

會話:一次會話中包含多次請求和響應

  一次會話:瀏覽器第一次給伺服器資源傳送請求,會話建立,直到有一方斷開為止

功能:在一次會話的範圍內的多次請求間,共享資料

方式:

  1.客戶端會話技術:Cookie

  2.服務端會話技術:Seesion

會話技術_Cookie快速入門

概念:客戶端會話技術,將資料儲存到客戶端

快速入門:

  使用步驟:

    1.建立Cookie物件,繫結資料

        new Cookie(String name,String value);

    2.傳送Cookie物件

        response.addCookie(Cookie cookie);

    3.獲取Cookie,拿到資料

        Cookie[] request.getCookies();

建立和傳送Cookie:

@WebServlet(name = "CookieDemo1", value = "/CookieDemo1")
public class CookieDemo1 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        
this.doPost(request, response); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.建立Cookie物件 Cookie c = new Cookie("msg", "hello"); //2.傳送Cookie response.addCookie(c); } }

獲取遍歷Cookie:

@WebServlet(name = "CookieDemo2", value = "/CookieDemo2")
public class CookieDemo2 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        this.doPost(request, response);
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //3.獲取Cookie
        Cookie[] cookies = request.getCookies();
        //獲取資料,遍歷Cookie
        if (cookies != null){
            for (Cookie cookie : cookies) {
                String name = cookie.getName();
                String value = cookie.getValue();
                System.out.println(name+":"+value);
            }
        }
    }
}