Loading

session机制

第一次

客户端第一次请求服务端时,服务端会产生一个session对象(用于保存客户的信息),并且每个session都有唯一的sessionId与之一一对应,来用于区分别的session。服务端会产生一个cookie,并且该cookiename=JSESSIONIDvalue=服务端sessionId的值,然后服务端会在响应客户端的同时,将cookie发送给客户端,至此客户端就有一个JSESSIONID,因此客户端的cookie就和服务端的sessionId一一对应。

第二次

第二次或第n次请求时,服务端会先用客户端的cookie中的JSESSIONID,去服务端的session中匹配sessionId

session

  1. session是存储在服务端的
  2. session是在同一个客户时请求时共享
  3. 实现机制:第一次请求时,产生一个sessionID并复制给cookie的Jsessionid然后发给客户端。最终通过session的sessionID与cookie的jsessionid实现一一对应。

session方法:

String getId();获取sessionId

boolean isNew();判断是否是新用户

void invalidate();销毁,使session失效

void setAttribute();

Object getAttribute():

void setMaxIncativeInterval(秒):获取最大有效非活动时间

cookie和session的区别

cookie session
保存的位置 客户端 服务端
安全 较不安全 较安全
保存的内容 String object

JSP 9大内置对象

pageContext JSP页面容器

request 请求对象

reponse 响应对象

session 会话对象


appliation 全局对象

{

getContextPath() 虚拟路径

getRealPath(String name):绝对路径 相对的绝对路径

}

config 配置对象

out 输出对象

exception 异常对象

page 当前JSP页面对象


cookie四种范围对象作用域

pageContext 当前页面有效

request 同一次请求有效,其他请求无效(请求转发后有效,重定向后无效)

session 同一次会话有效

application 整个项目运行期间有效,切换浏览器之后也可以

以上四个范围对象通过setAttribute进行赋值,通过getAttribute进行取值。

尽量使用范围小的

posted @ 2021-03-13 19:22  余月七  阅读(151)  评论(0编辑  收藏  举报