}
}
}
3.2 详细设计
3.2.1 HttpSession类
HTTP服务下的Session模块,它是用于服务器端, HttpSession类其主要功能是需要检查有多少人已过期,Session是指一个终端用户与交互系统进行通信的时间间隔,通常指从注册进入系统到注销退出系统之间所经过的时间以及如果需要的话,可能还有一定的操作空间。所以必须在该类中加入一个定时器定期检查过期会话,包含验证http请求和决定哪些应用程序的请求匹配的方法。
代码分析:
public class HttpApplicationManager : IDisposable
{
//### 当前服务器领域
public static string CurrentDomain;
//### 当前服务器领域
public static string RootDirectory;
//### 默认页面
public static string DefaultPage;
//###服务端口
public static int ServicePort;
//### 会话字典的键:应用独特的名称/值:是SessionManager
ConcurrentDictionary<string, SessionManager> applications;
//### 定时器
Timer managerTimer;
public HttpApplicationManager()
{
//初始化 ConcurrentDictionary<TKey, TValue> 类的新实例,该实例为空,具有指定的并发级别和容量,并为键类型使用默认比较器。
applications = new ConcurrentDictionary<string, SessionManager>();
managerTimer = new Timer(ManagerTimerMain, applications, 1000, 1000);
}
/// <summary>
///尝试添加一个空session管理
/// </summary>
/// <param name="app"></param>
/// <returns></returns>
public bool AddHttpApplication(SessionManager app)
{
if (applications.ContainsKey(app.Info.UniqueApplicationName))
return false;
return applications.TryAdd(app.Info.UniqueApplicationName, app);
}
/// <summary>
/// 定时器定期检查过期会话
/// </summary>
/// <param name="e"></param>
protected void ManagerTimerMain(object e)
{
ConcurrentDictionary<string, SessionManager> manager = (ConcurrentDictionary<string, SessionManager>)e;
- 上一篇:ASP.net企业培训在线考试系统的设计与实现
- 下一篇:对我国《小企业会计准则》的思考和探索
-
-
-
-
-
-
-
乳业同业并购式全产业链...
十二层带中心支撑钢结构...
电站锅炉暖风器设计任务书
java+mysql车辆管理系统的设计+源代码
当代大学生慈善意识研究+文献综述
大众媒体对公共政策制定的影响
杂拟谷盗体内共生菌沃尔...
酸性水汽提装置总汽提塔设计+CAD图纸
中考体育项目与体育教学合理结合的研究
河岸冲刷和泥沙淤积的监测国内外研究现状