Soubory cookie v JSP s příkladem

Co jsou cookies?

  • Cookies jsou textové soubory, které jsou uloženy na klientském počítači.
  • Používají se ke sledování informací pro různé účely.
  • Podporuje HTTP cookies pomocí technologie servletů
  • Soubory cookie se nastavují v záhlaví HTTP.
  • Pokud je prohlížeč nakonfigurován pro ukládání cookies, uchová informace až do data vypršení platnosti.

Typy souborů cookie v JSP

  1. Trvalý soubor cookie: Trvalý soubor cookie zůstává uložen ve vašem zařízení po nastavenou dobu a pomáhá webům zapamatovat si vaše preference a přihlašovací údaje.
  2. Netrvalý soubor cookie: Netrvalý soubor cookie je dočasný a smaže se, jakmile zavřete prohlížeč, používá se hlavně pro sledování relací.

Metody souborů cookie JSP

Níže jsou uvedeny metody souborů cookie:

  • Veřejné void setDomain (String doména)

    Tento soubor cookie JSP se používá k nastavení domény, na kterou se soubor cookie vztahuje

  • Veřejný řetězec getDomain()

    Tento soubor cookie JSP get se používá k získání domény, na kterou se cookie vztahuje

  • Veřejná void setMaxAge (int expirace)

    Nastavuje maximální dobu, která by měla platit do vypršení platnosti souboru cookie

  • Public intgetMaxAge()

    Vrací maximální stáří souboru cookie v JSP

  • Veřejný řetězec getName()

    Vrátí název souboru cookie

  • Public void setValue (hodnota řetězce)

    Nastavuje hodnotu přidruženou k souboru cookie

  • Veřejný řetězec getValue()

    Získejte hodnotu spojenou se souborem cookie

  • Veřejné void setPath (cesta řetězce)

    Tato sada cookie v JSP nastavuje cestu, na kterou se cookie vztahuje

  • Veřejný řetězec getPath()

    Získá cestu, na kterou se cookie vztahuje

  • Veřejné void setSecure (logický příznak)

    Mělo by být odesláno přes šifrovaná spojení, nebo ne.

  • Public void setComment(String cmt)

    Popisuje účel cookie

  • Veřejný řetězec getComment()

    Vrací komentáře cookie, které byly popsány.

Jak zacházet s cookies v JSP

  1. Vytvoření objektu cookie
  2. Nastavení maximálního věku
  3. Odeslání souboru cookie v hlavičkách odpovědi HTTP

Příklad

V tomto příkladu souborů cookie JSP se naučíme, jak zavolat konstruktor souborů cookie v JSP vytvořením souborů cookie s uživatelským jménem a e-mailem a přidáním stáří do souboru cookie na 10 hodin a pokusem o získání názvů proměnných v souboru action_cookie.jsp

Action_cookie.jsp.

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Cookie</title>
</head>
<body>
<form action="action_cookie_main.jsp" method="GET">
Username: <input type="text" name="username">
<br />
Email: <input type="text" name="email" />
<input type="submit" value="Submit" />
</form>
</body>
</html>

Action_cookie_main.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%
         
   Cookie username = new Cookie("username",
 			  request.getParameter("username"));
   Cookie email = new Cookie("email",
			  request.getParameter("email"));

   
   username.setMaxAge(60*60*10); 
   email.setMaxAge(60*60*10); 

   // Add both the cookies in the response header.
   response.addCookie( username );
   response.addCookie( email );
%>


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Cookie JSP</title>
</head>
<body>

<b>Username:</b>
   <%= request.getParameter("username")%>
<b>Email:</b>
   <%= request.getParameter("email")%>

</body>
</html>

Vysvětlení kódu

Action_cookie.jsp

Řádek 10–15 kódu: Zde přebíráme formulář, který musí být zpracován v action_cookie_main.jsp. Také bereme dvě pole „uživatelské jméno“ a „e-mail“, která musí být převzata od uživatele pomocí tlačítka Odeslat.

Action_cookie_main.jsp

Řádek 6–9 kódu: Vytvoření dvou objektů cookie „username“ a „email“ pomocí request.getParameter.

Řádek 12–13 kódu: Zde přidáváme věk k oběma souborům cookie, které byly vytvořeny po 10 hodinách, tj. v tomto věku vyprší platnost souborů cookie.

Řádek 16–17 kódu: Přidání souborů cookie do relace uživatelského jména a e-mailu a tyto dva soubory cookie mohou být načteny na žádost getParameter().

Výstup

Když spustíte výše uvedený kód, získáte následující výstup:

Metody souborů cookie JSP

Metody souborů cookie JSP

Když spustíme action_cookie.jsp, dostaneme dvě pole uživatelské jméno a e-mail a vyžaduje vstup uživatele a poté klikneme na tlačítko Odeslat. Získáme výstup z action_cookie_main.jsp, kde jsou proměnné uloženy v cookies JSP na straně klienta.