Session说明

来源:互联网 发布:java 解析word文档结构 编辑:程序博客网 时间:2024/04/25 07:03

1、   Session的作用:

A、 在网络中的应用,主要用于标识网络中的没一个访问了服务器的客户端,以 WWW服务器来讨论,其它的还没研究,当用户首次与WWW服务器连接时,它就与服务器建立了session,同时服务器会同时为其分配一个sessionID用于唯一标识用户的身份,这个sessionID是由WWW服务器随机产生的一个由24个字符组成的字符串。这个sessionID有很大的意义,例如当一个用户提交表单时,浏览器会将用户的sessionID自动附加在http头信息中,服务器处理完表单,将表单返回给sessionID的对应用户,在这里就需要sessionID标识用户的作用

B、 在我们编写asp.net程序时,可以通过访问asp.net的内置session对象为每个用户存储各自信息,类似程序中的一个全局变量

2、   session信息的配置

asp.net应用程序中,都有一个web.config文件,session的配置信息就包含在

<sessionState

/>
sessionState的语法:
<sessionState mode="Off|InProc|StateServer|SQLServer"
              cookieless="true|false"
              timeout="number of minutes"
              stateConnectionString="tcpip=server:port"
              sqlConnectionString="sql connection string"
              stateNetworkTimeout="number of seconds"
/>

必须具备的属性:

属性

选项

描述

mode

 

 

设置将Session信息存储到哪里

 

 

Off

设置为不使用Session功能

 

 

InProc

设置为将Session存储在进程内,就是ASP中的存储方式,这是默认值。

 

 

StateServer

设置为将Session存储在独立的状态服务中。

 

 

SQLServer

设置将Session存储在SQL Server中。

 

可选的属性:

属性

选项

描述

cookieless

 

 

设置客户端的Session信息存储到哪里

 

 

ture

使用Cookieless模式

 

 

false

使用Cookie模式,这是默认值。

timeout

 

 

设置经过多少分钟后服务器自动放弃Session信息。默认为20分钟

stateConnectionString

 

 

设置将Session信息存储在状态服务中时使用的服务器名称和端口号,例如:"tcpip=127.0.0.1:42424”。当mode的值是StateServer是,这个属性是必需的。

sqlConnectionString

 

 

设置与SQL Server连接时的连接字符串。例如"data source=localhost;Integrated Security=SSPI;Initial Catalog=northwind"。当mode的值是SQLServer时,这个属性是必需的。

stateNetworkTimeout

 

 

设置当使用StateServer模式存储Session状态时,经过多少秒空闲后,断开Web服务器与存储状态信息的服务器的TCP/IP连接的。默认值是10秒钟。

 

3、在asp.net中客户端与服务器端的session状态存储
         asp.net
中,客户端存储session信息的方式有两种:cookiecookieless,默认状态下,客户端还是使用cookie存储session信息,cookieless信息也可以在web.config文件中的sessionState里设置,如果cookieless=true客户端的session将不在使用cookie存储。

如果cookieless=false,那么session的信息将存储在IIS进程中,当IIS关闭或重启,这些信息都会丢失,这种方式的优点在于性能高,因为所有的session信息都保存在IIS进程中,所以IIS能够很快访问到这些信息,这种模式比进程外存储session信息或是SQLserver存储session信息都要快很多。
        
将服务器session信息存储在进程外:管理工具>服务>asp.net state service(启动),该服务主要是启动一个保存session信息的进程,服务启动后可以在任务管理器进程中看到一个aspnet_state.exe进程。或是将session信息存储在其它的服务器上,此时sessionState中的mode改为StateServerstateConnectionString中也要配置目标服务器的地址,还有一个条件就是目标服务器必须安装了.NET Framework并启动了asp.net state service服务
        
将服务器session信息存储在SQL Server中(整理中……)
 

 

 
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 三岁宝宝智力发育迟缓怎么办 学车体检听力没过怎么办 学车体检听力不过关怎么办 离职体检发现听力有问题怎么办 买的二手房土地证没过户怎么办 b2扣了9分怎么办 上海网约车车证怎么办 b2驾照累计12分怎么办 c1本扣满12分怎么办 太原公共自行车丢了怎么办 在太原出租车丢了东西怎么办 太原社保卡丢了怎么办 太原铁路医保卡丢了怎么办 学车体检视力不合格怎么办 换驾照色弱被拒怎么办 在上海考驾照贵怎么办 驾驶证有效期过了半年怎么办 资格证脱审2年了怎么办 换驾驶证时眼睛近视了怎么办 违章累计扣12分怎么办 一个违章扣12分怎么办 a1驾照扣3分怎么办 a1驾照扣12分怎么办 吃了毓婷哺乳了怎么办 吃了毓婷后出血怎么办 吃金毓婷喝了水怎么办 白带浓稠浆糊样怎么办 驾校学费不给退怎么办 b1驾证扣了9分怎么办 机动车登记证丢了怎么办 b1驾照扣了9分怎么办 听力正常体检不过关怎么办 做完人流第二天同房了怎么办 医院的票据丢了怎么办 体检人体成分(脂肪缺乏)该怎么办 诊断出右下叶肺炎怎么办 做胸透穿钢圈内衣怎么办 预约不上留学体检怎么办 跨省离职后社保怎么办 开车到成都限号怎么办 月经量多怎么办吃什么