Cookie in JSP con esempio

Che cosa sono i cookie?

  • I cookie sono file di testo che vengono memorizzati sul computer client.
  • Vengono utilizzati per tenere traccia delle informazioni per vari scopi.
  • Supporta i cookie HTTP utilizzando la tecnologia servlet
  • I cookie sono impostati nell'intestazione HTTP.
  • Se il browser è configurato per memorizzare i cookie, manterrà le informazioni fino alla data di scadenza.

Tipi di cookie in JSP

  1. Cookie persistente: Un cookie persistente rimane memorizzato sul tuo dispositivo per un periodo di tempo stabilito, aiutando i siti web a ricordare le tue preferenze e i tuoi dati di accesso.
  2. Cookie non persistente: Un cookie non persistente è temporaneo e viene eliminato quando chiudi il browser; viene utilizzato principalmente per il monitoraggio della sessione.

Metodi relativi ai cookie JSP

Di seguito sono riportate le modalità dei cookie:

  • Public void setDomain(String domain)

    Questo cookie impostato JSP viene utilizzato per impostare il dominio a cui si applica il cookie

  • Stringa pubblica getDomain()

    Questo cookie get JSP viene utilizzato per ottenere il dominio a cui si applica il cookie

  • Pubblico void setMaxAge(scadenza int)

    Imposta il tempo massimo che dovrebbe applicarsi fino alla scadenza del cookie

  • IntgetMaxAge pubblico()

    Restituisce l'età massima del cookie in JSP

  • Stringa pubblica getName()

    Restituisce il nome del cookie

  • SetValue pubblico void(valore stringa)

    Imposta il valore associato al cookie

  • Stringa pubblica getValue()

    Ottieni il valore associato al cookie

  • SetPath pubblico void(percorso stringa)

    Questo cookie impostato in JSP imposta il percorso a cui si applica il cookie

  • stringa pubblica getPath()

    Ottiene il percorso a cui si applica il cookie

  • Public void setSecure(flag booleano)

    Dovrebbe essere inviato tramite connessioni crittografate o meno.

  • Set vuoto pubblicoComment(String cmt)

    Descrive lo scopo dei cookie

  • Stringa pubblica getComment()

    Restituisce i commenti sui cookie che sono stati descritti.

Come gestire i cookie in JSP

  1. Creazione dell'oggetto cookie
  2. Impostazione dell'età massima
  3. Invio del cookie nelle intestazioni di risposta HTTP

Esempio

In questo esempio di cookie JSP, impareremo come chiamare il costruttore di cookie in JSP creando cookie di nome utente ed e-mail, aggiungendo l'età al cookie per 10 ore e provando a ottenere i nomi delle variabili in 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>

Spiegazione del codice

Action_cookie.jsp

Riga di codice 10-15: Qui stiamo prendendo un modulo che deve essere elaborato in action_cookie_main.jsp. Inoltre, stiamo prendendo due campi "username" e "email" che devono essere presi in input dall'utente con un pulsante di invio.

Action_cookie_main.jsp

Riga di codice 6-9: Creazione di due oggetti cookie di "username" e "email" utilizzando request.getParameter.

Riga di codice 12-13: Qui stiamo aggiungendo un'età a entrambi i cookie, che sono stati creati di 10 ore, ovvero i cookie scadranno in quell'età.

Riga di codice 16-17: Aggiungendo cookie alla sessione di nome utente ed email, questi due cookie possono essere recuperati quando richiesto da getParameter().

Uscita

Quando esegui il codice sopra ottieni il seguente output:

Metodi relativi ai cookie JSP

Metodi relativi ai cookie JSP

Quando eseguiamo action_cookie.jsp otteniamo due campi username ed email, e prende l'input dell'utente e poi clicchiamo sul pulsante submit. Otteniamo l'output da action_cookie_main.jsp dove le variabili sono memorizzate nel cookie JSP sul lato client.