Request和Session的生命周期

时间:2021-10-25 09:32:57

request的生命周期是request请求域,一个请求结束,则request结束 session的生命周期是session会话域,打开一个浏览器请求一个网站的页面后,Session开始,当session超过时间限制(一般是20分种)后,session注销而失效 或是人为使用session.invalidate();使用session失效; 或是关闭浏览器后,session还存在,但是这里已经无法获取session了,过一会它还是失效。

request和session的优点和缺点很明显 request占用资源比较少 安全性也比较高 可是相对来说 缺乏持续性 而session则相对来说 对资源的消耗会大点 安全性相对来说也会稍微低点 可是它能实现比如会话跟踪技术 个有优点和缺点 不过 个人觉得 如果可以使用request的情况下 尽量使用request 因为相对于服务器来说 资源的消耗这个问题还是比较重要的。

当从一个jsp发出一个request,即表明了这个request生命周期的开始,当到达action之后一般有两种处理request的方式,一种为request.getDispatcher.forward,一种是response.sendRedirect.

对于request的forward,该request的生命周期将会继续延续下去,当采用forward如果到达JSP页面,那么之前从第一个JSP页面中发送出来的request的消息将仍然存在,新的页面同样能够取得该request里所包含的一些信息,比如之前的JSP发送request中所包含的参数信息.事实上,它们是同一个request.



而如果是使用response.sendRedirect那么该request的生命周期将结束.



     对于request,对request信息的传递,只有setAttribute()这一个方法,该方法将设置一个Object对象到request中.

但是,如果当一个request是从jsp从发出,包含的信息段为param1=test这样的方式,那么只能通过getParameter()得到,getAttribute()是得不到param1的value的.

     再次,对于JSP的EL表达式,${}这中方式只能得到setAttribute中的值,因此当从一个JSP发送request到达action并且被forward到新的JSP中时,如果想在该JSP中取得JSP发送时的参数信息需要写为这种形式:${param.patam1}.

Request和Session的生命周期的更多相关文章

  1. 【转载】Session的生命周期

    http://www.cnblogs.com/binger/archive/2013/03/19/2970171.html 以前在学习的时候没怎么注意,今天又回过头来仔细研究研究了一下Session的 ...

  2. Cookie 和 Session 的区别和联系?session的生命周期?多个服务器部署session的管理?

    一.session 和 cookie 1.cookie Cookie会根据响应报文里的一个叫做Set-Cookie的首部字段信息,通知客户端保存Cookie.当下次客户端再向服务端发起请求时,客户端会 ...

  3. cookie和session的区别,session的生命周期,

    这些都是基础知识,不过有必要做深入了解.先简单介绍一下. 二者的定义: 当你在浏览网站的时候,WEB 服务器会先送一小小资料放在你的计算机上,Cookie 会帮你在网站上所打的文字或是一些选择, 都纪 ...

  4. cookie和session的区别及session的生命周期

    这些都是基础知识,不过有必要做深入了解.先简单介绍一下. 二者的定义: 当你在浏览网站的时候,WEB 服务器会先送一小小资料放在你的计算机上,Cookie 会帮你在网站上所打的文字或是一些选择,都纪录 ...

  5. session的生命周期是怎样的

    session的生命周期是怎样的 一.总结 一句话总结:Tomcat中Session的默认失效时间为20分钟.如果我们敲代码的时候把它设置成1个月,那么这一个月的数据会代替默认20分钟的数据,使ses ...

  6. Session的生命周期和工作原理

    一.什么是Session,如何使用?Session是用于存放用户与web服务器之间的会话,即服务器为客户端开辟的存储空间. 由于客户端与服务器之间的会话是无状态的机制,Session则可用于关联访问, ...

  7. Session的生命周期之关于浏览器关闭后的Session

    Session是JSP的九大内置对象中的一个,它可以保存当前用户的各种的状态信息. 初次接触Session时认为Session的生命周期是从浏览器打开一个窗口发送请求开始,到浏览器窗口关闭结束.其实这 ...

  8. Session 的生命周期

    #region EntityMap /// <summary>        /// 实体类值的访问器,线程安全        /// </summary>        // ...

  9. node中session存储与销毁,及session的生命周期

    1.首先在使用session之前需要先配置session的过期时间等,在入口文件app.js中 app.use(express.session({ cookie: { maxAge: config.g ...

随机推荐

  1. Liferay中SQL打印参数

      XX\tomcat-7.0.42\webapps\ROOT\WEB-INF\classes\log4j.properties log4j.rootLogger=INFO, CONSOLE log4 ...

  2. 【Spark篇】---Spark调优之代码调优,数据本地化调优,内存调优,SparkShuffle调优,Executor的堆外内存调优

    一.前述 Spark中调优大致分为以下几种 ,代码调优,数据本地化,内存调优,SparkShuffle调优,调节Executor的堆外内存. 二.具体    1.代码调优 1.避免创建重复的RDD,尽 ...

  3. bind&amp&semi;currying

    1. bind 基本用法 bind()是ECMAScript5中新增的方法,这个方法主要作用是将函数绑定至某个对象.当在函数f()上调用bind()方法并传入一个对象o作为参数,这个方法将返回一个新函 ...

  4. puppeteer 的PDD反爬经历

    使用puppeteer 爬取PDD数据时出现要求登录,以前是没有这问题的. 尝试多种方式如果: 变更UA 变更代理IP 变更Chromium版本(当然最终就是该问题的原因,但是因为版本跨度太大没有测试 ...

  5. IIS开多个HTTPS站点

    默认情况一个服务器的IIS只能绑定一个HTTPS也就是443端口 要实现多个站点对应HTTPS只能更改IIS配置 地址:C:\Windows\system32\inetsrv\config\appli ...

  6. PHP 使用 MongoDB

    PHP 想要往 MongoDB 里增删查改数据,需要先安装 mongodb 或 mongo 扩展模块,一般两个都装上: cd /usr/local/src/ wget https://pecl.php ...

  7. H5新增属性classList

    H5新增属性classList h5中新增了一个classList,原生js可以通过它来判断获取dom节点有无某个class. classList是html元素对象的成员,它的使用非常简单,比如 co ...

  8. TouchEvent里的targetTouches、touches、changedTouches的区别的具体体现是?

    touches:当前屏幕上所有触摸点的集合列表 targetTouches: 绑定事件的那个结点上的触摸点的集合列表 changedTouches: 触发事件时改变的触摸点的集合 举例来说,比如div ...

  9. android开发之提高应用启动速度&lowbar;splash页面瞬间响应&lowbar;避免APP启动闪白屏

    Application和Activity中的onCreate都进行了优化,基本没有耗时操作,但是启动应用之后还是会闪现一下白色背景,然后才进入Splash页面,对比了一下QQ.微信.微博等客户端,点击 ...

  10. 网站配置新的YII2可运行版本

    1. config 中的 gitignore 先将 -local 加入版本库 2. 将 runtime 目录添加写权限 3. 将web目录的asset 添加写的权限 4.