静态变量和Session的使用

最近做一个项目,一个表格的数据需要在会话过程中一直存在。因为接手的是别人做过的东西,按照原来的风格沿用了上面的静态变量来存储数据的方法

public static List<Word> Words=wordrList;

后来测试时发现用Chrome和IE同时打开这个项目,数据会被覆盖掉,比方说Chrome传进来了数据A,然后IE传进来数据B

此时Chrome什么都不做,只刷新一下,会发现原来的数据A变成了数据B,也就是说静态变量被新传来的数据给覆盖了。要是用静态变量来用户变量岂不是乱套了?

这时候应该用Session来取代静态变量:Session["WordList"]=wodrlist;

  Session是服务端专门存放用户变量的一种机制,不同的用户使用的Session是相互独立,互不干扰的。而静态变量则是单独存放在共享内存中,也就是任何用户使用的静态变量其实是同一个,用户B改变了它的值,用户A之前赋的值就被覆盖了,看到的也是用户B赋的值。

所有说,一般的网站开发中,用户的个人数据都用cookie或者session这累变量来存放。而静态变量用于公共数据,比方说门户网站的访问量或者聊天网站的聊天记录等

转载于:https://www.cnblogs.com/XCCU-2015/p/5054207.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值