java Web9大内置对象以及四种范围对象
9个内置对象
- out
- request
- response
- session
- application
- config
- exception
- page
- pageContext
从小到大
-
pageContext JSP页面容器 -->当前页面有效
(有的资料也称为page对象,不要与真正的page对象搞混)
-
request 请求对象 -->同一次请求有效(请求转发还是有效,重定向[两次请求]无效)
-
session 会话对象 -->同一次会话有效(只要不关闭或者切换浏览器)
-
application 全局对象 -->全局有效(整个项目有效,切换浏览器有效,关闭server、其他项目无效)
Tips:
- 多个项目共享、重启之后仍然有效:JNDI
- 以上四个范围对象,通过setAttribute()复制,通过getAttribute()取值
- 以上范围对象,尽量使用最小的范围,原因:对象范围越大,造成的性能损耗越大
以上四个对象共有的方法:
Object getAttribute(String name)
:根据属性名,获得属性值
void setAttribute(String name,Object obj)
:设置属性值(包括新增、修改)
setAttribute("a","b");
- 如果a对象之前不存在,则新建一个a对象
- 如果a之前已经存在,则将a的值改为b对象
void removeAttribute(String name)
:根据属性名,删除对象