四大作用域

四大作用域总结

application 域 (ServletContext)

  • 生命周期:web应用启动时创建,web应用销毁时销毁
  • 作用范围:整个web应用
  • 功能:在整个web应用中共享数据

Session 域 (HTTPSession)

  • 生命周期:
    创建:第一次调用request。getSessions()方法时创建。
    销毁:超时销毁(默认30分钟)、主动杀死(invalidate方法)、意外身亡(服务器宕机)
  • 作用范围:整个会话
  • 功能:在整个会发范围内共享数据

Request 域 (HttpServletRequest)

  • 生命周期:一次请求开始时创建,结束时销毁。
  • 作用范围:整个请求链
  • 功能:在整个请求链共享数据

page 域 (pageContext)

  • 生命周期:访问jsp页面时创建,访问结束时销毁
  • 作用范围:当前jsp页面
  • 功能:在整个jsp页面共享数据

pageContext是九大隐式对象之一,代表当前jsp页面的运行环境的对象它可以获取其他八大隐式对象。
注:其他八大隐式对象可以在jsp中直接使用,但是在el表达式中,只能通过pageContext获取。

  1. getPage(): 获取page隐式对象
  2. getRequest():获取request隐式对象
  3. getResponse():获取response隐式对象
  4. getServletConfig():获取config隐式对象
  5. getServletContext():获取application隐式对象
  6. getSession():获取session隐式对象
  7. getException():获取exception隐式对象
  8. getOut():获取out隐式对象

说明:

  1. 作用范围由小到大,优先级从大到小
    page -> request -> session ->application

  2. 他们能作为域对象的原因是都内置了map集合。(cookie不是域对象,其存储在本地。)

原文地址:https://www.cnblogs.com/juzhuxiaozhu/p/12749645.html