用户注销java代码 jsp注销用户( 三 )


*************************************************************************************
十、如何使用cookie记录各个用户的访问计数
*************************************************************************************
1.获取cookie数组中专门用于统计用户访问次数的cookie的值
2.将值转换成int型
3.将值加1并用原来的名称重新创建一个Cookie对象
4.重新设置最大时效
5.将新的cookie输出
*************************************************************************************
十一、session在不同环境下的不同含义
*************************************************************************************
session,中文经常翻译为会话 , 其本来的含义是指有始有终的一系列动作/消息,比如打电话是从拿起电话拨号到挂断电话这中间的一系列过程可以称之为一个session 。
然而当session一词与网络协议相关联时,它又往往隐含了“面向连接”和/或“保持状态”这样两个含义 。
session在Web开发环境下的语义又有了新的扩展,它的含义是指一类用来在客户端与服务器端之间保持状态的解决方案 。有时候Session也用来指这种解决方案的存储结构 。
*************************************************************************************
十二、session的机制
*************************************************************************************
session机制是一种服务器端的机制,服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息 。
但程序需要为某个客户端的请求创建一个session的时候,服务器首先检查这个客户端的请求里是否包含了一个session标识-称为session id,如果已经包含一个session id则说明以前已经为此客户创建过session , 服务器就按照session id把这个session检索出来使用(如果检索不到,可能会新建一个,这种情况可能出现在服务端已经删除了该用户对应的session对象 , 但用户人为地在请求的URL后面附加上一个JSESSION的参数) 。
如果客户请求不包含session id,则为此客户创建一个session并且生成一个与此session相关联的session id,这个session id将在本次响应中返回给客户端保存 。
*************************************************************************************
十三、保存session id的几种方式
*************************************************************************************
A.保存session id的方式可以采用cookie,这样在交互过程中浏览器可以自动的按照规则把这个标识发送给服务器 。
B.由于cookie可以被人为的禁止,必须有其它的机制以便在cookie被禁止时仍然能够把session id传递回服务器,经常采用的一种技术叫做URL重写,就是把session id附加在URL路径的后面,附加的方式也有两种,一种是作为URL路径的附加信息,另一种是作为查询字符串附加在URL后面 。网络在整个交互过程中始终保持状态,就必须在每个客户端可能请求的路径后面都包含这个session id 。
C.另一种技术叫做表单隐藏字段 。就是服务器会自动修改表单,添加一个隐藏字段,以便在表单提交时能够把session id传递回服务器 。
*************************************************************************************
十四、session什么时候被创建
*************************************************************************************
一个常见的错误是以为session在有客户端访问时就被创建 , 然而事实是直到某server端程序(如Servlet)调用HttpServletRequest.getSession(true)这样的语句时才会被创建 。
*************************************************************************************

推荐阅读