Cookies στο JSP με Παράδειγμα
Τι είναι τα Cookies;
- Τα cookies είναι τα αρχεία κειμένου που αποθηκεύονται στον υπολογιστή-πελάτη.
- Χρησιμοποιούνται για την παρακολούθηση των πληροφοριών για διάφορους σκοπούς.
- Υποστηρίζει cookies HTTP χρησιμοποιώντας τεχνολογία servlet
- Τα cookies ορίζονται στην κεφαλίδα HTTP.
- Εάν το πρόγραμμα περιήγησης έχει ρυθμιστεί να αποθηκεύει cookies, θα διατηρεί τις πληροφορίες μέχρι την ημερομηνία λήξης.
Τύποι cookies στο JSP
- Επίμονο cookie: Ένα μόνιμο cookie παραμένει αποθηκευμένο στη συσκευή σας για μια καθορισμένη περίοδο, βοηθώντας τους ιστότοπους να θυμούνται τις προτιμήσεις και τα στοιχεία σύνδεσής σας.
- Μη μόνιμο cookie: Ένα μη μόνιμο cookie είναι προσωρινό και διαγράφεται μόλις κλείσετε το πρόγραμμα περιήγησής σας, το οποίο χρησιμοποιείται κυρίως για την παρακολούθηση περιόδου σύνδεσης.
Μέθοδοι Cookies JSP
Ακολουθούν οι μέθοδοι cookies:
-
Public void setDomain (Τομέας συμβολοσειράς)
Αυτό το cookie set JSP χρησιμοποιείται για τον ορισμό του τομέα στον οποίο εφαρμόζεται το cookie
-
Δημόσια συμβολοσειρά getDomain()
Αυτό το JSP get cookie χρησιμοποιείται για τη λήψη του τομέα στον οποίο ισχύει το cookie
-
Δημόσιο κενό setMaxAge (int expiry)
Ορίζει τον μέγιστο χρόνο που θα πρέπει να ισχύει μέχρι τη λήξη του cookie
-
Δημόσια intgetMaxAge()
Επιστρέφει τη μέγιστη ηλικία του cookie στο JSP
-
Δημόσια συμβολοσειρά getName()
Επιστρέφει το όνομα του cookie
-
Public void setValue (τιμή συμβολοσειράς)
Ορίζει την τιμή που σχετίζεται με το cookie
-
Δημόσια συμβολοσειρά getValue()
Λάβετε την τιμή που σχετίζεται με το cookie
-
Public void setPath (Διαδρομή συμβολοσειράς)
Αυτό το set cookie στο JSP ορίζει τη διαδρομή στην οποία εφαρμόζεται το cookie
-
Δημόσια συμβολοσειρά getPath()
Λαμβάνει τη διαδρομή στην οποία εφαρμόζεται το cookie
-
Public void setSecure (Boolean flag)
Θα πρέπει να αποστέλλεται μέσω κρυπτογραφημένων συνδέσεων ή όχι.
-
Public void setComment (Συμβολοσειρά cmt)
Περιγράφει τον σκοπό του cookie
-
Δημόσια συμβολοσειρά getComment()
Επιστρέφει τα σχόλια των cookie που έχουν περιγραφεί.
Πώς να χειριστείτε τα cookies στο JSP
- Δημιουργία αντικειμένου cookie
- Ρύθμιση της μέγιστης ηλικίας
- Αποστολή του cookie σε κεφαλίδες απόκρισης HTTP
Παράδειγμα
Σε αυτό το παράδειγμα cookie JSP, θα μάθουμε πώς να καλούμε τον κατασκευαστή cookie στο JSP δημιουργώντας cookie ονόματος χρήστη και email και προσθέτοντας ηλικία στο cookie για 10 ώρες και προσπαθώντας να λάβουμε τα ονόματα των μεταβλητών στο 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>
Επεξήγηση του κώδικα
Action_cookie.jsp
Κωδικός Γραμμή 10-15: Εδώ παίρνουμε μια φόρμα που πρέπει να υποβληθεί σε επεξεργασία στο action_cookie_main.jsp. Επίσης, λαμβάνουμε δύο πεδία «όνομα χρήστη» και «email» που πρέπει να ληφθούν από τον χρήστη με ένα κουμπί υποβολής.
Action_cookie_main.jsp
Κωδικός Γραμμή 6-9: Δημιουργία δύο αντικειμένων cookie «όνομα χρήστη» και «email» χρησιμοποιώντας request.getParameter.
Κωδικός Γραμμή 12-13: Εδώ προσθέτουμε ηλικία και στα δύο cookies, τα οποία έχουν δημιουργηθεί για 10 ώρες, δηλαδή τα cookies θα λήξουν σε αυτήν την ηλικία.
Κωδικός Γραμμή 16-17: Προσθήκη cookie στη συνεδρία ονόματος χρήστη και email και αυτά τα δύο cookies μπορούν να ανακτηθούν όταν ζητηθούν από την getParameter().
Παραγωγή
Όταν εκτελείτε τον παραπάνω κώδικα, λαμβάνετε την ακόλουθη έξοδο:
Όταν εκτελούμε το action_cookie.jsp, λαμβάνουμε δύο πεδία όνομα χρήστη και email, και χρειάζεται είσοδος από τον χρήστη και μετά κάνουμε κλικ στο κουμπί υποβολή. Λαμβάνουμε την έξοδο από το action_cookie_main.jsp όπου οι μεταβλητές αποθηκεύονται στα cookies JSP στην πλευρά του πελάτη.