Java Tutorial/Servlet/HttpSessionBindingListener

Материал из Java эксперт
Перейти к: навигация, поиск

Servlet Custom Session Binding Listener

   <source lang="java">

import java.util.*; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class MyServlet extends HttpServlet {

 public void doGet(HttpServletRequest req, HttpServletResponse res)
                              throws ServletException, IOException {
   res.setContentType("text/plain");
   PrintWriter out = res.getWriter();
   // Get the current session object, create one if necessary
   HttpSession session = req.getSession();
   // Add a CustomBindingListener
   session.setAttribute("bindings.listener",
                        new CustomBindingListener(getServletContext()));
   out.println("This page intentionally left blank");
 }

} class CustomBindingListener implements HttpSessionBindingListener {

 // Save a ServletContext to be used for its log() method
 ServletContext context;
 public CustomBindingListener(ServletContext context) {
   this.context = context;
 }
 public void valueBound(HttpSessionBindingEvent event) {
   context.log("[" + new Date() + "] BOUND as " + event.getName() +
               " to " + event.getSession().getId());
 }
 public void valueUnbound(HttpSessionBindingEvent event) {
   context.log("[" + new Date() + "] UNBOUND as " + event.getName() +
               " from " + event.getSession().getId());
 }

}</source>