JSP九大内置对象
- pageContext JSP页面容器
- request 请求对象
- response 响应对象
- session 会话对象
- config 配置对象(配置服务器信息)
- out(输出对象)
- page 当前JSP页面对象 相当于java中的this
- exception 异常对象
- application 全局对象
四种范围对象(小-大)
pageContext (page 对象) 当前页面有效
request 同一次请求有效
session 同一次会话有效
application 全局有效
共有的方法:
-
Object getAttribute(String name):根据属性名获取属性值
-
void setAttribute(String name,Object obj):设置属性值(新增,修改)
例如:setAttribute(“a”,“b”);
//如果a对象之前不存在,则新建一个a对象并将a的值赋为b
// 如果a对象之前已经存在,则将a的值改为b
-
void removeAttribute(String name):根据属性名删除对象
-
pageContext:当前页面有效
-
request.setAttribute() 注意用request传值的话只有同一次请求有效,如果你要跳转页面传值只能用请求转发跳转,使用重定向得不到值
**请求转发:**在客户端内部直接跳转(产生一次请求)
**重定向:**要返回服务器重新定向(会产生两次请求,因此request的setAttribute会无法得到值)
3.session 同一次会话有效,即只要浏览器不关,无论怎么跳转,值都有效
4. application 全局变量 整个项目运行期间都有效,即浏览器切换仍然有效 注意:是当前项目,tomcat关了会无效
---------》多个项目共享、重启仍然有效:JNDI
- 以上四个范围对象,通过setAttribute()赋值,通过getAttribute()取值
- 尽量用小范围的