当前位置:首页 > JavaServer Page

sesion监听器使用request对象

canca18年前 (2008-01-29)JavaServer Page510
  //----------------------   SessionListener.java----------------------------------------------------  
   
  package   listeners;  
   
  import   javax.servlet.ServletContext;  
   
  import   javax.servlet.ServletContextEvent;  
   
  import   javax.servlet.ServletContextListener;  
   
  import   javax.servlet.http.HttpSessionAttributeListener;  
   
  import   javax.servlet.http.HttpSessionBindingEvent;  
   
  import   javax.servlet.http.HttpSessionEvent;  
   
  import   javax.servlet.http.HttpSessionListener;  
   
  //   ServletRequestListener为Servlet2.4新增接口  
   
  import   javax.servlet.ServletRequestListener;  
   
  import   javax.servlet.ServletRequestEvent;  
   
  import   javax.servlet.http.HttpServletRequest;  
   
     
   
  public   final   class   SessionListener  
   
  implements   HttpSessionListener,ServletRequestListener   {  
   
  private     HttpServletRequest     request;  
   
   
   
  public   void   requestDestroyed(ServletRequestEvent   sre)   {   }  
   
     
   
  public     void   requestInitialized(ServletRequestEvent   sre)  
   
    {  
   
                      request=(HttpServletRequest)sre.getServletRequest();  
   
          }  
   
          public   void   sessionCreated(HttpSessionEvent   event)   {  
   
                  String   logMsg=event.getSession().getId()  
   
                          +"'     '"+request.getRemoteAddr()  
   
                          +":"+request.getRemotePort();  
   
                  log("sessionCreated('"   +   logMsg   +   "')");  
   
          }  
   
     
   
          public   void   sessionDestroyed(HttpSessionEvent   event)   {  
   
                  log("sessionDestroyed('"   +   event.getSession().getId()   +   "')");  
   
          }  
   
     
   
          private   void   log(String   message)   {  
   
                      System.out.println("SessionListener:   "   +   message);  
   
          }  
   
  }  
   
     
   
  在开始接到客户端请求(requestInitialized)时,获得当前的HttpRequest对象保存在私有成员   request   中,这样在Session创建时可以实现对Session用户进行验证,以及关闭Session,限制IP地址访问等,这里仅以记录Session来源为例(SessionListener.java)  
   
  编译这个类后还要在web.xml的host元素内加入以下行:  
   
      <listener>  
   
          <listener-class>listeners.SessionListener</listener-class>  
   
      </listener>  
   
                              本文适用环境:Tomcat   5.02,jdk1.4  

扫描二维码推送至手机访问。

版权声明:本文由Ant.Master's Blog发布,如需转载请注明出处。

本文链接:https://iant.work/post/483.html

标签: JavaServer Page
分享给朋友:

“sesion监听器使用request对象” 的相关文章

JBoss,Tomcat 中文URL支持方法

JBOSS 找到jboss4的deploy\jbossweb-tomcat50.sar\server.xml,编辑该文件,在下面的XML节点中增加红色的字<Connector port="8080" address="${jboss.bind.address}"  &nbs…

在web.xml不认<taglib>解决办法

在web.xml不认<taglib>解决办法: 如果是头是这样的<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application&n…

<html:select>设置默认值

在ActionFrom的reset方法里赋初值就可以,这样不管是调用的action或jsp都会先调用reset方法。…

浏览网页时的错误代号

① 客户方错误   100  继续   101  交换协议  ② 成功   200  OK   201  已创建 &nbs…

FCKeditor的秘密

       哈哈。。由于项目的需要,这几天一直在搞FCKeditor。其实,FCKeditor配置很简单。但不知道怎么样。在我的项目里FCKeditor总不能在FireFox里显示。开始我还以为是我的配置有问题。但我从头到尾检查了配置…

几个open source的html parser的比较

HTMLParser最先是看见SourceForge上下载的包,真是有点大的吓人,一个小小的html parser, 居然有5M。下载回来,展开刨去文档等等杂乱的部分,source也还是不小的。用ant build过后,生成两个jar,htmlparser.jar(200k)和htmllexer.j…

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。