Apa itu Cookies? Cookies adalah informasi yang berupa file kecil yang ditanam pada komputer client. Cookies biasanya digunakan oleh sebuah website untuk mengidentifikasi data pengguna. Data yang disimpan pada Cookies dikirim bersamaan dengan request yang dilakukan oleh browser terhadap suatu halaman website.
Dengan menyimpan data informasi berupa cookie di komputer client, kita bisa mengidentifikasi user tersebut ketika mengakses website kita secara berulang. Penggunaan cookies banyak sekali digunakan situs-situs besar didunia seperti facebook,google dsb. Â
Cookie biasanya ditetapkan dalam header HTTP (meskipun JavaScript juga dapat menetapkan cookie langsung pada browser). Sebuah JSP yang menetapkan cookie mungkin mengirim header yang terlihat seperti ini:
HTTP/1.1 200 OK Date: Fri, 04 Feb 2000 21:03:38 GMT Server: Apache/1.3.9 (UNIX) PHP/4.0b3 Set-Cookie: name=xyz; expires=Friday, 04-Feb-07 22:03:38 GMT; path=/; domain=tutorialpedia.net Connection: close Content-Type: text/html
Contoh penggunaan cookie bisa kita lihat pada website yang mempunyai fasilitasi untuk melakukan login. Biasanya akan terdapat sebuah checkbox “Remember Me” dimana “Remember Me” itu berfungsi untuk menyimpan segala informasi detail login pada web browser berupa cookies. Yang nanti nya akan diambil informasi detail login tersebut ketika akan masuk ke website tanpa perlu mengetikkan ulang.
Cara Menggunakan Cookies dengan JSP
Membuat Cookie :
Cookie firstName = new Cookie("first_name", request.getParameter("first_name")); Cookie lastName = new Cookie("last_name", request.getParameter("last_name"));
Pada kode diatas berfungsi untuk membuat sebuah cookie dengan nama first_name dan last_name.
Mengatur Expires Cookie untuk 24 jam
firstName.setMaxAge(60*60*24); lastName.setMaxAge(60*60*24);
Menambahkan kedua cookie tersebut pada response header
response.addCookie( firstName ); response.addCookie( lastName );
Sehingga kode lengkap pada halaman cookie.jsp akan terlihat seperti berikut ini:
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"> <% // Create cookies for first and last names. Cookie firstName = new Cookie("first_name", request.getParameter("first_name")); Cookie lastName = new Cookie("last_name", request.getParameter("last_name")); // Set expiry date after 24 Hrs for both the cookies. firstName.setMaxAge(60*60*24); lastName.setMaxAge(60*60*24); // Add both the cookies in the response header. response.addCookie( firstName ); response.addCookie( lastName ); %> <html> <head> <title>Setting Cookies</title> </head> <body> <center> <h1>Setting Cookies</h1> </center> <ul> <li><p><b>First Name:</b> <%= request.getParameter("first_name")%> </p></li> <li><p><b>Last Name:</b> <%= request.getParameter("last_name")%> </p></li> </ul> </body> </html>
Sekarang kita akan membuat sebuah form dengan field first_name dan last_name. Lalu isi kedua field tersebut akan disimpan di cookies browser.
Buat file jsp baru dengan nama input.jsp lalu isi denga kode berikut:
<%@ 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> <title>Test Cookie</title> </head> <body> <form action="cookie.jsp" method="post"> First Name: <input type="text" name="first_name"> <br /> Last Name: <input type="text" name="last_name" /> <input type="submit" value="Submit" /> </form> </body> </html>
form action pada kode diatas akan di arahkan ke cookie.jsp yang nantinya akan disimpan informasi first_name dan last_name pada cookies browser.
Lalu lihat pada cookies browser, maka akan terlihat beberapa informasi yang sudah kita masukkan tadi.
Membaca Cookie
buat file jsp baru dengan nama readcookie.jsp dan berikut ini isi kodenya:
<%@ 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> <title>Reading Cookies</title> </head> <body> <h1>Reading Cookies</h1> <% Cookie cookie = null; Cookie[] cookies = null; // Get an array of Cookies associated with this domain cookies = request.getCookies(); if( cookies != null ){ out.println("<h2> Found Cookies Name and Value</h2>"); for (int i = 0; i < cookies.length; i++){ cookie = cookies[i]; out.print("Name : " + cookie.getName( ) + ", "); out.print("Value: " + cookie.getValue( )+" <br/>"); } }else{ out.println("<h2>No cookies founds</h2>"); } %> </body> </html>
Maka hasilnya akan tampil seperti berikut:
Menghapus Cookie:
Untuk menghapus cookie anda bisa melakukannya secara langsung melalui browser. atau bisa menggunakan kode berikut ini.
Buat file baru dengan nama hapuscookie.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>Insert title here</title> </head> <body> <% Cookie cookie = null; Cookie[] cookies = null; // Get an array of Cookies associated with this domain cookies = request.getCookies(); if( cookies != null ){ out.println("<h2> Found Cookies Name and Value</h2>"); for (int i = 0; i < cookies.length; i++){ cookie = cookies[i]; if((cookie.getName( )).compareTo("first_name") == 0 || ((cookie.getName( )).compareTo("last_name") == 0 )){ cookie.setMaxAge(0); response.addCookie(cookie); out.print("<b>Deleted cookie: " + cookie.getName( ) + "<br/></b>"); } out.print("Name : " + cookie.getName( ) + ", "); out.print("Value: " + cookie.getValue( )+" <br/>"); } }else{ out.println( "<h2>No cookies founds</h2>"); } %> </body> </html>
Jalankan hapuscookie.jsp maka hasilnya akan seperti berikut:
Sekarang coba tutup browser anda lalu buka kembali readcookie.jsp maka hasilnya akan seperti berikut:
Itulah Cara Menggunakan Cookies dengan JSP.
Jika ada yang ingin ditanyakan silahkan kirimkan pesan melalui fan page TutorialPedia.NET.
Kak! Tutorialnya membantu saya bangeet, makasih dan keep posting yakk
sama sama