Evästeet JSP:ssä esimerkin avulla

Mitä ovat evästeet?

  • Evästeet ovat tekstitiedostoja, jotka tallennetaan asiakaskoneelle.
  • Niitä käytetään tietojen seuraamiseen eri tarkoituksiin.
  • Se tukee HTTP-evästeitä käyttämällä servlet-tekniikkaa
  • Evästeet asetetaan HTTP-otsikossa.
  • Jos selain on määritetty tallentamaan evästeitä, se säilyttää tiedot viimeiseen käyttöpäivään asti.

Evästeiden tyypit JSP:ssä

  1. Pysyvä eväste: Pysyvä eväste säilyy laitteellesi tietyn ajan, mikä auttaa verkkosivustoja muistamaan asetuksesi ja kirjautumistietosi.
  2. Ei-pysyvä eväste: Ei-pysyvä eväste on väliaikainen ja poistetaan, kun suljet selaimesi. Sitä käytetään pääasiassa istunnon seurantaan.

JSP-evästeiden menetelmät

Seuraavat ovat evästemenetelmät:

  • Public void setDomain (merkkijonoverkkotunnus)

    Tätä JSP-evästettä käytetään määrittämään verkkotunnus, jota eväste koskee

  • Julkinen merkkijono getDomain()

    Tätä JSP-hakuevästettä käytetään hankkimaan verkkotunnus, jota eväste koskee

  • Julkinen void setMaxAge(int expiry)

    Se asettaa enimmäisajan, jonka tulee olla voimassa, kunnes eväste vanhenee

  • Julkinen intgetMaxAge()

    Se palauttaa evästeen enimmäisiän JSP:ssä

  • Julkinen merkkijono getName()

    Se palauttaa evästeen nimen

  • Public void setValue (merkkijonoarvo)

    Asettaa evästeeseen liittyvän arvon

  • Julkinen merkkijono getValue()

    Hanki evästeeseen liittyvä arvo

  • Public void setPath(merkkijonopolku)

    Tämä asetettu eväste JSP:ssä määrittää polun, jota eväste koskee

  • Julkinen merkkijono getPath()

    Se saa polun, jota eväste koskee

  • Public void setSecure (Boolen lippu)

    Se tulee lähettää salattujen yhteyksien kautta tai ei.

  • Public void setComment(String cmt)

    Se kuvaa evästeen tarkoitusta

  • Julkinen merkkijono getComment()

    Se palauttaa kuvatut evästekommentit.

Kuinka käsitellä evästeitä JSP:ssä

  1. Evästeobjektin luominen
  2. Maksimi-iän asettaminen
  3. Eväste lähetetään HTTP-vastausotsikoissa

esimerkki

Tässä JSP-evästeesimerkissä opimme kutsumaan evästeiden rakentajaa JSP:ssä luomalla evästeitä käyttäjätunnuksesta ja sähköpostiosoitteesta ja lisäämällä evästeen iän 10 tunniksi ja yrittämällä saada muuttujien nimet tiedostossa 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>

Koodin selitys

Action_cookie.jsp

Koodirivit 10-15: Tässä otamme lomakkeen, joka on käsiteltävä tiedostossa action_cookie_main.jsp. Lisäksi otamme kaksi kenttää "käyttäjänimi" ja "sähköposti", jotka on otettava käyttäjältä lähetyspainikkeella.

Action_cookie_main.jsp

Koodirivit 6-9: Luodaan kaksi evästeobjektia "käyttäjänimi" ja "sähköposti" käyttäen request.getParameter.

Koodirivit 12-13: Tässä lisäämme molempien evästeiden ikää, jotka on luotu 10 tunnin pituisista eli evästeet vanhenevat siinä iässä.

Koodirivit 16-17: Evästeiden lisääminen käyttäjätunnuksen ja sähköpostin istuntoon ja nämä kaksi evästettä voidaan noutaa getParameter():n pyynnöstä.

ulostulo

Kun suoritat yllä olevan koodin, saat seuraavan tulosteen:

JSP-evästeiden menetelmät

JSP-evästeiden menetelmät

Kun suoritamme action_cookie.jsp-tiedoston, saamme kaksi kenttää käyttäjänimi ja sähköpostiosoite, ja se vaatii käyttäjän syötteen ja sitten napsautamme Lähetä-painiketta. Saamme tulosteen action_cookie_main.jsp:stä, jossa muuttujat on tallennettu evästeiden JSP:hen asiakaspuolella.