黑马程序员技术交流社区

标题: 【广州校区】JSP的九大内置对象和四大作用域 [打印本页]

作者: Mylo    时间: 2017-12-6 18:22
标题: 【广州校区】JSP的九大内置对象和四大作用域
JSP的九大内置对象
Jsp内置对象
功能
主要方法
out
向客户端输出数据
print() println() flush() clear() isAutoFlush() getBufferSize() close()
request
向客户端请求数据
getAttributeNames() getCookies() getParameter() getParameterValues() setAttribute() getServletPath()
response
封装了jsp产生的响应,然后被发送到客户端以响应客户的请求
addCookie() sendRedirect() setContentType()
flushBuffer() getBufferSize() getOutputStream()
sendError() containsHeader()
application
config
表示Servlet的配置,当一个Servlet初始化时,容器把某些信息通过此对象传递给这个Servlet
getServletContext() getServletName() getInitParameter() getInitParameterNames()
page
Jsp实现类的实例,它是jsp本身,通过这个可以对它进行访问
flush()
pagecontext
为JSP页面包装页面的上下文。管理对属于JSP中特殊可见部分中己经命名对象的该问
forward() getAttribute() getException() getRequest()
getResponse() getServletConfig()
getSession()
getServletContext() setAttribute()
removeAttribute()
findAttribute()
session
用来保存每个用户的信息,以便跟踪每个用户的操作状态
getAttribute() getId() getAttributeNames() getCreateTime() getMaxInactiveInterval()
invalidate() isNew()
exception
反映运行的异常
getMessage()
[url=]close[/url]
JSP的四大作用域
JSP的作用域分为page,request,session,application。作用域规定的是变量的有效期限和使用范围,如下:
pageContext
     如果把变量放到pageContext里,就说明它的作用域是page,它的有效范围只在当前jsp页面里。从把变量pageContext开始,到jsp页面结束,你都可以使用这个变量。
request
     如果把变量放到request里,就说明它的作用域是request,它的有效范围是当前请求周期。所谓请求周期,就是指从http请求发起,到服务器处理结束,返回响应的整个过程。在这个过程中可能使用forward的方式跳转了多个jsp页面,在这些页面里你都可以使用这个变量。
session
     如果把变量放到session里,就说明它的作用域是session,它的有效范围是当前会话。所谓当前会话,就是指从用户打开浏览器开始,到用户关闭浏览器这中间的过程。这个过程可能包含多个请求响应。也就是说,只要用户不关浏览器,服务器就有办法知道这些请求是一个人发起的,整个过程被称为一个会话(session),而放到会话中的变量,就可以在当前会话的所有请求里用。   
application
如果把变量放到application里,就说明它的作用域是application,它的有效范围是整个应用。整个应用是指从应用启动,到应用结束。我们没有说从服务器启动,到服务器关闭,是因为一个服务器可能部署多个应用,当然你关闭了服务器,就会把上面所有的应用都关闭了。application作用域里的变量,它们的存活时间是最长的,如果不进行手工删除,它们就一直可以使用。与上述三个不同的是,application里的变量可以被所有用户使用。这在其他scope中都是不会发生的,page, request, session都是完全隔离的,无论如何修改都不会影响其他人的数据。






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2