application: 是ServletContext接口的实例,该类在javax.servlet包下!属于javaee
config:是ServletConfig接口的实例,该类在javax.servlet包下!属于javaee
exception:是Throwable类的实例,该类在java.lang包下!属于javase
out:是JspWriter类的实例,该类在javax.servlet.jsp包下。属于javaee
Page:是Object类的实例,该类在java.lang包下。属于javase
pageContext:是PageContext类的实例,该类在javax.servlet.jsp包下。属于javaee
request:是HttpServletRequest接口的实例,该类在javax.servlet.http包下,属于javaee
response:是HttpServletResponse接口的实例,该类在javax.servlet.http包下,属于javaee
session:是HttpSession接口的实例,该类在javax.servlet.http包下,属于javaee。
Cookie:javax.servlet.http包下的类!
从Servlet/Action中获取JSP的内置对象PageContext
从tomcate的work目录下随便找一个jsp被翻译成的java文件,在_jspService(..)方法里我们看到pageContext是这样获取的:
“
javax.servlet.jsp.PageContext pageContext =
JspFactory.getDefaultFactory().getPageContext(this, request,response, null, true, 8192, true);
”
因此我们在Servlet或Action中应这样获取JSP的内置对象PageContext:
//先获得JspFactory实例
JspFactory fac=JspFactory.getDefaultFactory();
//然后调用JspFactory实例的getPagContext(..)方法。
PageContext pageContext=fac.getPageContext(this, request,response, null, false, JspWriter.DEFAULT_BUFFER, true);
这里有必要再次说明一下pagecontext ,它用于方便存取各种范围的名字空间、servlet相关的对象的API——换句话就是说用它可以方便的获取其他内置对象!