1 总体对比
1.1 作用范围:
Request域对象: 仅一次请求范围有效。
ServletContext域对象:一个工程有效。
Session域对象: 一个浏览器的多次请求范围有效。(会话范围有效)
1.2 保存值的生命周期不一样:
request:
仅浏览器发出请求的时候,容器开始生效,响应完成的时候,容器死亡。
servletContext:
(1)创建时机:servletContext对象会被tomcat服务器创建出来。
(2)死亡时机(了解)
1)tomcat启动状态下,移除工程。
2)正常停止tomcat服务器。
session:
(1)创建时机
1)这个浏览器在servlet中第一次使用session的时候会创建。
2)这个浏览器第一次访问jsp的时候,服务器也会为这个浏览器创建一个session对象。
(2)销毁时机
1)程序员调用invalidate方法(立刻销毁)
2)设置的存活时间到了(默认是30分钟)
3)服务器非正常关闭(例如突然断电)
1.3 操作属性值的方法(一样):
setAttribite
getAttribute