Listen---对request,session和application进一步理解

1.listen监听器WEB 应用过程中:ServletContext,HttpSession和ServletRequest

1.对象的创建和销毁时间监听器2.属性的增加和删除3.绑定到HttpSession某个对象的状态时间

2. 监听三个 实现不同的接口,同时在web.xml进行配置与@webFilter和@webservlet一样

1).servletContext 对象创建时候或者销毁的servlet监听器

      ServletContextListen------当前WEB应用加载时候就被创建,

之下在Web应用下配置文件

作用:对当前WEB应用的相关资源进行初始化操作:

    创建数据库连接池,Spring的IOC容器,读取当前WEB的初始化参数

 2)Session销毁:只有调用Sessioninvalid或者当前WEB应用被卸载时候才能被销毁,关闭客户端不一定销毁Session


 3. request---

是一个请求当一个响应返回时候就被销毁;所有a.jsp 放一个属性在b.jso 无法取得该属性   ---通过超链接无法

1. <a href="bbs.jsp">To bbs</a>----通过超链接方式无法在其他.jsp页面上获取a.jsp上属性,不同的request请求

2.<jsp:forward page="/bbs.jsp"></jsp:forward>----可以在bbs.jsp 上获取a.JSP上的属性  请求转发一个request

3. a.jsp----servlet--转发---b.jsp:  只是一个request  ,请求转发是同一个request,重定向属于两个request(客户端在去其它.jsp相当于超链接方式)


4.Session:

   1.Session的创建:如果不是第一个request请求,不会创建一个Session对象,只有第一次访问WEB的一个JSP或者Servlet时,并且需要创建Session 才会创建Session对象  ;JSP页面 session="false" 第一次访问jsp不会创建Session;

                                                 JSP页面:HttpSession session=request.getSession();

2.Session 的销毁:session 过期,直接调用session的invalidate方法或者  WEB应用卸载(Session持久化)

   关闭浏览器并比意味着Session被销毁,通过sessionID(JSSION)找到原来的Session

    URL;jsessionid="数字"

  


  5. ServletContex:  application 贯穿当前WEB应用的生命周期,在application中放一个属性当前WEB应用任何 JSP都可以获取


1.ServletContextAtrributeListener,HttpSessionAttributeListener ,ServletRequestAttributeListener 对象的监听器


2.感知Session绑定时间监听器:理解JavaBean对象 理解自己在Session中状态

监听实现该接口的Java类的对象被绑定到Session

原文地址:https://www.cnblogs.com/woainifanfan/p/6705917.html