Câu hỏi chung về các servlet java và cách tốt nhất để xử lý các yêu cầu. Nếu tôi trúng phương pháp doGet của tôi từ một yêu cầu máy chủ từ xa:Java servlet - Session cleanup (HttpServletRequest)
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
....
<do work here>
....
kill(request);
}
private void kill(HttpServletRequest request) {
//How do I kill the user session here?
}
Sau khi tôi xử lý yêu cầu ở cuối của tôi và tạo đầu ra của tôi cho người yêu cầu, tôi muốn về cơ bản "giết" phiên của họ. Hiện tại, phiên đó kéo dài và do đó ăn hết bộ nhớ. Sau đó, khi đạt đến mức tối đa, tất cả các cuộc gọi khác đều hết thời gian chờ.
tôi đã cố gắng tạo ra một đối tượng HttpSession sử dụng các đối tượng yêu cầu, nhưng có kết quả tương tự:
HttpSession session = request.getSession();
session.invalidate();
Tôi có ấn tượng rằng vấn đề cụ thể của bạn cần phải được giải quyết theo một cách khác. – BalusC
Có thể. Mục tiêu cuối cùng là tôi muốn kết thúc một phiên trong nhóm phiên của tôi sau khi yêu cầu của họ được xử lý. Dù có hay không đang giết đối tượng yêu cầu hoặc tạo một đối tượng phiên cho phiên đó để xóa nó, tôi không chắc chắn. – user82302124