一、为什么要隐式对象
1.简化了JSP 页面开发,
2.隐式对象名称是JAVA的保留字,
3.隐式对象不需要再去实例化由JSP内部实现和管理的内部对象,
4.通过隐式对象来访问网页的动态内容,JSP隐式对象是web容器加载的一组类
二、九大隐式对象的分类
三、各对象的作用。
(1)Application
全局作用域:代表整个运行时的
Web 模块(应用程序)
(2)Seesion
会话作用域:代表当前的 HTTP 会话
(3)Request
请求作用域:代表当前的 HTTP 请求
(4)Pagecontext
页面作用域:代表当前 JSP 页面的上下文。因为一个 JSP 页面的上下文包括当前的请求、会话和应用程
序,所以使用 pageContext 实例可以访问与一个JSP 页面相关的所有命名空间
(5)Response 响应对象
(6)Page:当前页面对象
(7)Config:servletConfing/FilterConfig对象
(8)Out:输出对象
(9)Exception:异常
四、四大域的作用域大小及生命周期
(1)pageContext
jsp执行时创建pageContext,jsp页面结束时pageContext销毁
(2)request 客户请求服务器时创建,请求结束request销毁
(3)session 客户机请求服务器时,第一次getSession时,服务器创建session,session过xx多长时间没用了(或调用了session.invalidate方法),服务器销毁session
(4)application(servletContext) web应用启动时就创建,web应用停止就销毁
五、什么时候用域的问题
(1).什么情况下用request域?如果在开发程序时,数据看完就没用了,那就应该把数据存在request域范围内。比如看新闻,新闻属于用户看完就没用的数据,这时servlet获得新闻数据,就应该存在request里面交给jsp显示。
(2).什么情况下用session域?如果在开发程序时,数据看完了用户等一会儿还要用,那就应该把数据存在session域范围内.例如购物,购买的商品是用户的数据,这个数据产生之后,用户等一会儿结帐还要用,那么程序就应该把 数据存在用户的session中。
(3).什么情况下用application域?如果在开发程序,数据产生了,这个数据不仅等一会儿自己要用,还要给别人用,那就应该存在application域,例如web聊天室,用户的聊天数据,这个数据不仅用户等一会儿自己要看,还要给别人看。