Servlet Context là gì?
Servlet context dùng để duy trì trạng thái cho ứng dụng web. Mỗi máy ảo Java chỉ có một context. Servlet context lưu lại 1 nội dung dùng chung cho nhiều servlet.Servlet Context có 3 phương thức chính:
- getAttribute()
- setAttribute()
- removeAttribute()
Servlet Context giúp cung cấp thông tin liên lạc giữa các servlet, nó có sẵn cho bất kỳ servlet và JSP là một phần của ứng dụng web. Ngoài ra Servlet Context còn được sử dụng để có được thông tin cấu hình web.xml.
Video chi tiết: youtu.be/wOd885Lgjvc
Demo Servlet Context
Viết ra một ứng dụng đếm số lần truy cập trang.- Tạo ra 1 servlet có nội dung như sau:
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
ServletContext context = request.getServletContext();
Integer count = (Integer) context.getAttribute("count");
if (count == null) {
count = 0;
}
count++;
context.setAttribute("count", count);
try (PrintWriter out = response.getWriter()) {
/* TODO output your page here. You may use following sample code. */
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet Count1</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Page views: " + count);
out.println("</body>");
out.println("</html>");
}
}
- Chạy thử:
- Chạy thử nhiều lần:
- Tạo ra 1 servlet khác với nội dung tương tự servlet trên và chạy thử ta vẫn thấy biến cout (Page Views) tăng dần sau mỗi dần tải lại trang, nghĩa là 2 servlet này đều lấy chung nội dung từ Servlet context.
0 nhận xét:
Đăng nhận xét
Bỏ capcha cho thầy tiện comment :P