คุกกี้ใน JSP พร้อมตัวอย่าง
คุกกี้คืออะไร
- คุกกี้คือไฟล์ข้อความที่จัดเก็บไว้ในเครื่องไคลเอนต์
- พวกเขาคุ้นเคยกับ track รวบรวมข้อมูลเพื่อวัตถุประสงค์ต่างๆ
- รองรับคุกกี้ HTTP โดยใช้เทคโนโลยีเซิร์ฟเล็ต
- คุกกี้ถูกตั้งค่าในส่วนหัว HTTP
- หากเบราว์เซอร์ได้รับการกำหนดค่าให้จัดเก็บคุกกี้ เบราว์เซอร์จะเก็บข้อมูลไว้จนถึงวันหมดอายุ
ประเภทของคุกกี้ใน JSP
- คุกกี้ถาวร: คุกกี้แบบถาวรจะถูกเก็บไว้ในอุปกรณ์ของคุณเป็นระยะเวลาหนึ่ง ซึ่งช่วยให้...ping เว็บไซต์จะจดจำการตั้งค่าและข้อมูลการเข้าสู่ระบบของคุณ
- คุกกี้ไม่คงอยู่: คุกกี้แบบไม่ถาวรเป็นคุกกี้ชั่วคราวที่จะถูกลบเมื่อคุณปิดเบราว์เซอร์ โดยส่วนใหญ่ใช้สำหรับเซสชัน tracกษัตริย์.
วิธีการคุกกี้ JSP
ต่อไปนี้เป็นวิธีการใช้คุกกี้:
-
โมฆะสาธารณะ setDomain (โดเมนสตริง)
คุกกี้ชุด JSP นี้ใช้เพื่อตั้งค่าโดเมนที่จะใช้คุกกี้
-
สตริงสาธารณะgetDomain()
คุกกี้รับ JSP นี้ใช้เพื่อรับโดเมนที่ใช้คุกกี้
-
โมฆะสาธารณะ setMaxAge (int หมดอายุ)
ตั้งเวลาสูงสุดซึ่งควรใช้จนกว่าคุกกี้จะหมดอายุ
-
สาธารณะ intgetMaxAge()
ส่งคืนอายุสูงสุดของคุกกี้ใน JSP
-
สตริงสาธารณะ getName()
มันจะส่งคืนชื่อของคุกกี้
-
setValue โมฆะสาธารณะ (ค่าสตริง)
ตั้งค่าที่เกี่ยวข้องกับคุกกี้
-
สตริงสาธารณะ getValue()
รับค่าที่เกี่ยวข้องกับคุกกี้
-
setPath โมฆะสาธารณะ (เส้นทางสตริง)
ชุดคุกกี้ใน JSP นี้กำหนดเส้นทางที่จะใช้คุกกี้
-
สตริงสาธารณะ getPath()
ได้รับเส้นทางที่คุกกี้ใช้
-
โมฆะสาธารณะ setSecure (ธงบูลีน)
ควรส่งผ่านการเชื่อมต่อที่เข้ารหัสหรือไม่
-
setComment โมฆะสาธารณะ (สตริง cmt)
มันอธิบายวัตถุประสงค์ของคุกกี้
-
สตริงสาธารณะ getComment()
มันจะส่งคืนความคิดเห็นของคุกกี้ที่ได้รับการอธิบายไว้
วิธีจัดการคุกกี้ใน JSP
- การสร้างวัตถุคุกกี้
- การตั้งค่าอายุสูงสุด
- การส่งคุกกี้ในส่วนหัวการตอบกลับ HTTP
ตัวอย่าง
ในตัวอย่างคุกกี้ JSP นี้ เราจะเรียนรู้วิธีเรียกใช้ตัวสร้างคุกกี้ใน JSP โดยการสร้างคุกกี้ของชื่อผู้ใช้และอีเมล และเพิ่มอายุให้กับคุกกี้เป็นเวลา 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
Code บรรทัดที่ 10-15: เรากำลังใช้แบบฟอร์มที่ต้องประมวลผลใน action_cookie_main.jsp นอกจากนี้ เรายังใช้ฟิลด์สองฟิลด์ คือ “ชื่อผู้ใช้” และ “อีเมล” ซึ่งต้องรับอินพุตจากผู้ใช้ด้วยปุ่มส่ง
Action_cookie_main.jsp
Code บรรทัดที่ 6-9: การสร้างคุกกี้อ็อบเจ็กต์สองรายการคือ “ชื่อผู้ใช้” และ “อีเมล” โดยใช้ request.getParameter
Code บรรทัดที่ 12-13: ที่นี่เรากำลังเพิ่มอายุให้กับคุกกี้ทั้งสองตัวที่ถูกสร้างขึ้นมาเป็นเวลา 10 ชั่วโมง นั่นคือคุกกี้จะหมดอายุเมื่อถึงอายุดังกล่าว
Code บรรทัดที่ 16-17: การเพิ่มคุกกี้ลงในเซสชันของชื่อผู้ใช้และอีเมล และคุกกี้ทั้งสองนี้สามารถดึงมาได้เมื่อมีการร้องขอโดย getParameter()
เอาท์พุต
เมื่อคุณรันโค้ดข้างต้น คุณจะได้ผลลัพธ์ดังต่อไปนี้:
เมื่อเราเรียกใช้ action_cookie.jsp เราจะได้สองฟิลด์คือ username และ email จากนั้นระบบจะรับข้อมูลจากผู้ใช้ จากนั้นเราจะคลิกปุ่มส่ง เราจะได้ผลลัพธ์จาก action_cookie_main.jsp ซึ่งตัวแปรจะถูกเก็บไว้ในคุกกี้ JSP บนฝั่งไคลเอนต์


