Avatar
0
Java Dev Beginner
Java Dev Beginner
Cấu hình thời gian của session trong spring
Em code web spring + thymleaf sử dụng HttpServletRequest,HttpServletResponse để truyển dữ liệu giữa các màn trong quá trình chuyển dữ liệu session bị hết thời gian và không lấy được gí trị của biến đã set,

em kiểm tra thì time session đã set là 1h, có thể là trong quá trình ridrect các trang rquest tiếp theo là request mới nên mất session của request cũ không ạ em cảm ơn

  • Answer
Remain: 5
1 Answer
Avatar
monkey Beginner
monkey Beginner
HttpSession là một trong những tính năng không mấy hay ho, về bản chất nó không thực sự là một phiên giống như em nghĩ vì đây là giao thức HTTP 1 giao thức ngắt kết nối nên thực chất chẳng có phiên nào cả.

Spring sử dụng một id lưu trong cookie hoặc truyền qua param, mỗi khi em gửi request lên thì phải gửi kèm cái này thì nó mới lấy được đối tượng HttpSession ra để xử lý. Như vậy thì session của em bị hết hạn có thể là do:

  1. Em không gửi được session Id lên server, nghĩa là session id không tồn tại trong cookie của em.
  2. Spring vì một nguyên nhân nào đó đã xóa đối tượng HttpSession của em đi rồi.

Nên câu trả lời cho câu hỏi của em là request mới không làm mất session của request cũ nhé.

  • 0
  • Reply