คุกกี้ Java: วิธีจัดการเซสชัน Java Servlet โดยใช้คุกกี้

เผยแพร่แล้ว: 2020-08-19
Java Cookies- วิธีจัดการเซสชัน Java Servlet โดยใช้คุกกี้

หน้าเว็บไม่มีความทรงจำ ผู้ใช้ที่เปลี่ยนจากหน้าหนึ่งไปยังอีกหน้าหนึ่งจะได้รับการปฏิบัติโดยเว็บไซต์ในฐานะผู้เยี่ยมชมใหม่ทั้งหมด คุกกี้ของเซสชันช่วยให้เว็บไซต์ที่คุณกำลังเยี่ยมชมสามารถติดตามการเคลื่อนไหวของคุณจากหน้าหนึ่งไปอีกหน้า ดังนั้นคุณจะไม่ถูกถามถึงข้อมูลเดียวกันกับที่คุณให้ไว้กับเว็บไซต์

คุกกี้ช่วยให้คุณดำเนินการผ่านหน้าต่างๆ ของเว็บไซต์ได้อย่างรวดเร็วและง่ายดาย โดยไม่ต้องตรวจสอบสิทธิ์หรือประมวลผลพื้นที่ใหม่แต่ละส่วนที่คุณเยี่ยมชมใหม่

แต่บางครั้งในเว็บแอปพลิเคชัน Java เราควรรู้ว่าใครคือลูกค้าและดำเนินการตามคำขอตามลำดับ

ตัวอย่างเช่น แอปพลิเคชันตะกร้าสินค้าควรรู้ว่าใครเป็นผู้ส่งคำขอเพื่อเพิ่มสินค้า และต้องเพิ่มสินค้าในตะกร้าสินค้าใด หรือใครเป็นผู้ส่งคำขอชำระเงิน เพื่อให้สามารถเรียกเก็บเงินตามจำนวนเพื่อแก้ไขลูกค้าได้

เซสชันคือสถานะการสนทนาระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ และอาจประกอบด้วยคำขอและการตอบสนองหลายรายการระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ เนื่องจาก HTTP และ Web Server ทั้งคู่ไม่มีสถานะ วิธีเดียวที่จะรักษาเซสชันคือเมื่อข้อมูลเฉพาะบางอย่างเกี่ยวกับเซสชัน (id เซสชัน) ถูกส่งผ่านระหว่างเซิร์ฟเวอร์และไคลเอ็นต์ในทุกคำขอและการตอบกลับ

วิธีจัดการเซสชัน Java Servlet โดยใช้คุกกี้

ตอนนี้ มาสร้าง Simple Dynamic Web Project ใน Eclipse ซึ่งจะอธิบายการจัดการเซสชัน Java Servlet โดยใช้คุกกี้

นี่คือขั้นตอน:

  1. สร้างโครงการเว็บแบบไดนามิก: CrunchifySessionManagementByCookie
  2. crunchify-login.html : สร้างหน้าต้อนรับของแอปพลิเคชัน
  3. CrunchifyLoginServlet.java – ดูแลคำขอเข้าสู่ระบบ
  4. CrunchifyLogoutServlet.java – ดูแลคำขอออกจากระบบ
  5. web.xml – ไฟล์ Deployment Descriptor (ไม่เห็น web.xml ทำตามบทช่วยสอนนี้)
  6. CrunchifyLoginSuccessful.jsp – คำขอความสำเร็จจะถูกส่งต่อไปยัง LoginSuccess.jsp คุกกี้นี้จะถูกใช้ที่นั่นเพื่อติดตามเซสชัน นอกจากนี้ ให้สังเกตว่าระยะหมดเวลาของคุกกี้ถูกตั้งค่าเป็น 60 นาที
Crunchify การจัดการเซสชันโดยคุกกี้

ต้องอ่านอีก:

  • ตัวอย่าง/บทช่วยสอน Spring MVC: สวัสดีชาวโลก – Spring MVC 3.2.1
  • วิธีอัปเดตกราฟเส้นแบบประกายไฟทุก 3 วินาทีใน Spring MVC (อัปเดตตามเวลาจริง)

1. crunchify-login.html

2. CrunchifyLoginServlet.java

3. CrunchifyLogoutServlet.java

4. web.xml

5. CrunchifyLoginSuccessful.jsp

ทีนี้มาลองรันตัวอย่างนี้กัน:

  • ปรับใช้โครงการ CrunchifySessionManagementByCookie กับ Tomcat และเรียกใช้ Tomcat
ปรับใช้โครงการ Crunchify Session Management ไปยัง Tomcat
  • ชี้ URL เบราว์เซอร์ของคุณไปที่ http://localhost:8080/CrunchifySessionManagementByCookie/crunchify-login.html
กวดวิชาคุกกี้ Crunchify - หน้าจอเข้าสู่ระบบ
  • หน้าความสำเร็จ
กวดวิชาคุกกี้ Crunchify - เข้าสู่ระบบสำเร็จ
  • หน้าเข้าสู่ระบบล้มเหลว
กวดวิชาคุกกี้ Crunchify - การเข้าสู่ระบบล้มเหลว

ตอนนี้จะตรวจสอบได้อย่างไรว่าคุกกี้ของคุณตั้งค่าถูกต้องหรือไม่

ลองดาวน์โหลด Cookie Manager Extension และคุณจะเห็น Cookie ในเบราว์เซอร์ของคุณดังที่แสดงด้านล่าง

Cookie Manager - การตรวจสอบเบราว์เซอร์

แจ้งให้เราทราบหากคุณประสบปัญหาใด ๆ ที่ทำงานอยู่เหนือรหัสการจัดการคุกกี้ของ Servlet