JSP的九个内置对象是Servlet API接口的实例,已经默认初始化为对象,可以直接使用。
① application
application是javax.servlet.ServletContext的实例,代表JSP所属的Web应用本身。
用于在JSP页面,或者在Servlet之间交换信息。
常用方法:
setAttribute(String attName,String attValue)
getAttribute(String attName)
getInitParameter(String paramName)
② session
session是javax.servlet.http.HttpSession的实例,代表一次会话
常用方法:
setAttribute(String attName,String attValue)
getAttribute(String attName)
③ request
request是javax.servlet.http.HttpServletRequest的实例,封装了一次请求,客户端的请求参数都封装在该对象里。
用于获取客户端请求参数
常用方法:
setAttribute(String attName,String attValue)
getAttribute(String attName)
getParameter(String paramName)
getParameterValues(String paramName)
setCharacterEncoding(String env)
④ response
response是javax.servlet.http.HttpSession的实例,代表服务器对客户端的响应。常用于重定向。
常用方法:
getOutputStream()
sendRedirect(java.lang.String location)
⑤ pageContext
pageContext是javax.servlet.jsp.PageContext的实例,代表该JSP页面上下文,用以访问页面中的共享数据。
常用方法:
getServletContext()
getServletConfig()
⑥ out
javax.servlet.jsp.JspWriter,代表JSP页面的输出流,输出内容形成HTML页面
⑦ page
代表this
⑧ config
javax.servlet.ServletConfig,代表JSP的配置信息
方法:
getInitParameter(String paramName)
getInitParameternames()
⑨ exception
java.lang.Throwable
方法:
getMessage()
printStackTrace()
总结:
JSP内置对象的实质:这些对象要么是_jspService()方法的形参,要么是其局部变量,
所以我们直接在JSP脚本中调用这些对象,无需创建他们。