Session 、Application 和 HttpContext 的使用区别
在ASP.NET WEB页面开发中,经常会需要保存一些信息,以便在不同的页面或时间段都能够访问到。这其中便会用到Session和Application。
Session 、Application 和 HttpContext 都是在服务器上开辟了一个内存空间,将一些信息存储到该内存空间中。
Session :Session 会对每一个客户端(浏览器)在服务器端划分一个区域,该区域用于存储该客户端的一些信息,每一个客户端对应服务器端唯一的一个区域空间;Session默认的生存周期为20分钟,当Session超出20分钟或用户主动删除Session,则Session被销毁。
Application :Application 对于每一个WEB网站在服务器端划分一个区域,但对于同一个WEB网站而言,Application 是共享的,也就是说,每一个客户端(浏览器)都可以访问同一个Application值;Application的生存周期为当前WEB网站启动直至关闭。
HttpContext :HttpContext 有一个 Items属性的键值对,可以使用 HttpContext.Items["name"] = "Tom" 的方式来存储值。但HttpContext只对当前请求的响应管道内(生命周期)有效,一旦当前管道关闭或者被销毁,则HttpContext.Items的值也随之被销毁。(所以若使用HttpContext存储值,那么使用Response.Redirect("页面地址")的方式会使得页面周期被强行关闭而导致HttpContext被销毁;但是使用Server.Transfer("页面地址") 的方式并不会使管道被关闭,所以HttpContext依旧会被保存下来。)

Session 、Application 和 HttpContext 的使用区别的更多相关文章
- page,request,session,application四个域对象的使用及区别
转自:page,request,session,application四个域对象的使用及区别 1.page指当前页面.只在一个jsp页面里有效 .2.request 指从http请求到服务器处理结束, ...
- Servlet学习笔记(1)--第一个servlet&&三种状态对象(cookie,session,application)&&Servlet的生命周期
servlet的404错误困扰了两天,各种方法都试过了,翻书逛论坛终于把问题解决了,写此博客来纪念自己的第一个servlet经历. 下面我会将自己的编写第一个servlet的详细过程提供给初学者,大神 ...
- Session, Token and SSO 有什么区别
Session, Token and SSO 有什么区别 Basic Compareation Session-based Authentication In Session-based Authen ...
- JavaWeb -cookie&session&application
cookie&session&application总结 Cookie[key-value](不是内置对象必须new): 1. Cookie 是由服务端生成的,在发送给客户端保存 2. ...
- java基础之缓存:session、cookie和cache的区别
以前实现数据的缓存有很多种方法,有客户端的Cookie,有服务器端的Session和Application. 其中Cookie是保存在客户端的一组数据,主要用来保存用户名等个人信息. Session则 ...
- request, session, application辨析(待更新)
作用域 request < session < application 分析 1. request 只在一次请求中有效,当请求发送变化时,信息将失效. 2. session 在当前一次会话 ...
- request,session,application
JSP 的3个内置对象request,session,application,其实都有一个作用域,这些对象内部有一个Map成员用于存放数据,比如session对象的setAttribute(key,v ...
- struts2标签获取parameter,request,session,application中的值
http://localhost:8080/demo/index.jsp?flag=kkkk <s:property value="#parameters.flag" /&g ...
- struct2访问或添加request/session/application
访问或添加request/session/application 1 通过ActionContext //这样放置 public String execute() { ActionConte ...
随机推荐
- [Project Name] was compiled with optimization - stepping may behave oddly; variables may not be available.
控制台输出的时候显示一串这样的信息:[Project Name] was compiled with optimization - stepping may behave oddly; variabl ...
- Lintcode 150.买卖股票的最佳时机 II
------------------------------------------------------------ 卧槽竟然连题意都没看懂,百度了才明白题目在说啥....我好方啊....o(╯□ ...
- 搭建自己私有的PKM系统,各家PKM大比拼。。附:构建自己熟悉的基础Docker,破解联通光猫
Docker这容器真是很好玩!干啥都想上docker了,快疯了. 这不,最近wiz笔记开始收费,很是不爽,需要寻求新的PKM系统了.备选及落选理由如下: wiz笔记 -- 好用,顺手.要开始收费了,不 ...
- Java中的URL类
Java的网络类可以让你通过网络或者远程连接来实现应用.而且,这个平台现在已经可 以对国际互联网以及URL资源进行访问了.Java的URL类可以让访问网络资源就像是访问你本地的文件夹一样方便快捷.我们 ...
- 在Asp.Net MVC 中如何用JS访问Web.Config中appSettings的值
应用场景: 很多时候我们要在Web.Config中添加appSettings的键值对来标识一些全局的信息,比如:调用service的domain,跳转其他网站页面的url 等等: 那么此时就涉及到了一 ...
- Good Bye 2016
A - New Year and Hurry (water) #include <bits/stdc++.h> using namespace std; int main() { ]; ; ...
- PTAM 编译安装 on MAC(mavericks)
最近有需要研究PTAM,所以需要在我的MAC上编译安装,整个过程让人非常崩溃各种问题陷阱.现在整理一下编译过程.我已经成功在MAC上编译.那么接下来我会详细讲解整个过程: 注意: 部分链接可能需要FQ ...
- 返水bug-百威
NOOK(Y) CSBFB(1000000) off(Y) QQ(44460898) G(1) off1(Y) QQ1(451933084) G1(1) off2(Y) QQ2(462814677) ...
- Can't load IA 32-bit .dll on a AMD 64-bit platform错误的解决
64位的系统,64位的myeclipse,64位的jdk,64位的tomcat,结果报错:Can't load IA 64-bit .dll on a AMD 32-bit platform,简直无语 ...
- install hdp 2.2 on ubuntu 14.04
http://www.swiss-scalability.com/2014/12/install-hdp-22-on-ubuntu-1404-trusty.html 在新加节点上运行 sed -e & ...