zoukankan      html  css  js  c++  java
  • 浅谈page,request,session,application四种范围

    JaveWeb四种主要的范围:

    1.page: page表示页面范围。 页面范围对应的时间段为:从客户访问一个jsp文件开始,到这个jsp文件执行结束。

    2.request:  request表示请求范围。 请求范围时间段为:从客户请求访问一个jsp文件开始,到这个jsp返回响应结果结束,如果这个jsp文件把请求转发给其他web组件,那么知道其他web组件返回响应结果结束。    请求范围是指服务器响应一次客户请求的过程,从servlet容器接收到一个客户请求开始,到返回响应结果结束, 请求范围与servletRequest和servletResponse相对应。

    3.session: session表示会话范围。 会话范围对应着整个会话的生存周期。会话范围是指浏览器与一个web应用进行一次会话的过程。具体实现上,会话范围与httpsession对象的生命周期相对应。因此web组件只要共享同一个httpsession对象也就能共享会话范围内的数据。  举例说明: 浏览器进程第一次请求访问应用中一个支持会话的网页,servlet容器驶入寻找请求中表示sessionID的cookie,由于还不存在这样的cookie,所以一个新的会话开始了,创建一个httpsession的对象,然后为它分配唯一的sessionID,并把id作为Cookie放在http响应结果中,当浏览器接收到http响应后,会把sessionID保存的cookie保存在客户端。浏览器进程继续访问应用的任意一个支持会哈德页面,http请求会包含表示sessionID的Cookie,servlet容器试图寻找http请求中sessionID的cookie,找到后可以找到与sessionID匹配的httpSession。

    4.application(应用)范围: web应用范围对应整个web应用的生存周期。web应用范围值得是web应用的生命周期,具体实现上web应用范围与servletContext对象的生命周期对应,web应用范围内的共享数据作为servletContext的属性存在。因此web组件只要共享同一个servletContext对象就能共享web应用范围内的共享数据。

    在jsp页面可以直接使用application对象, 在servlet中却不能直接使用,

    这如何是好呢?
    在servlet 中使用application方法如下:

    this.getServletContext().setAttribute("user","123456");


    原文链接:https://blog.csdn.net/a1281069907/article/details/80522239

  • 相关阅读:
    PHP函数include include_once require和require_once的区别
    PHP替换回车换行的三种方法
    PHP获取绝对路径dirname(__FILE__)和__DIR__比较
    jQuery实现倒计时重新发送短信验证码功能示例
    js人民币转大写
    js前端数据验证JS工具
    安卓动画学习笔记
    ActivityNotFoundException: No Activity found to handle Intent
    Android笔记
    再次踩bug:遍历删除list(java.util.ConcurrentModificationException)
  • 原文地址:https://www.cnblogs.com/shouyaya/p/12337729.html
Copyright © 2011-2022 走看看