关闭

浅谈:request,session,application

标签: sessionapplication服务器stringobject活动
22275人阅读 评论(3) 收藏 举报
分类:

request,session,application,三者比较


作用域:

request < session < application


各自对应的接口

request对象 对应的接口 :

javax.servlet.ServletRequest 其子接口:javax.servlet.http.HttpServletRequest


session对象 对应的接口 :javax.servlet.http.HttpSession


application对象 对应的接口 :javax.servlet.ServletContext


三者共有的方法

setAttribute(String name , Object o ) ,getAttribute(String name) ;


简单分析三者

1.request

调用上面两个方法,只在一次请求上(转发不算请求,因为转发是服务器端的行为)生效,当把信息返回给客户端,该对象就被摧毁


2.session

概念

是服务器端的行为

用于跟踪客户的状态,当用户去访问某个站点时,服务器端就会为客户产生一个sessionID,以cookie的方式返回给客户端,当客户的去访问该站点的其他服务时,就会带者当前sessionID一起发出请求,已识别是哪个用户,一个用户就好比一个session对象,互不干扰。


运行机制



Session失效原因

1) Session 过期

2) 服务器端调用了invalidate(),让其失效

3) 现在的网页大部分是支持session的,要让该页面失去session功效,

    则在页面加上 <%@ page session="false" %> 即可,但一般不会这样做


Session重要方法

1) getId() --- 获取session的id号,每个id号都是不同的

2) isNew() --- 判断该session是不是新的

3) invalidate() --- 让当前session失效,释放资源

4) setMaxInactiveInterval(int interval) --- 设置session处于不活动的时间间隔(以秒为单位),

    超过该时间,session失效,

    如果设置的是负数,或0,则不限制session不活动的时间间隔,默认一般是30分钟

5) setAttribute(String name , Object o ) ,getAttribute(String name)


运用场景

1) 登录

2) 购物车



3.application

调用上面两个方法,一个服务器就一个application对象,用户共享一个application,当服务器停止的时候application 被摧毁,(用于网站访问次数


jsp内置对象映射表





12
1

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:747622次
    • 积分:5473
    • 等级:
    • 排名:第4872名
    • 原创:80篇
    • 转载:6篇
    • 译文:0篇
    • 评论:181条
    最新评论