jsp九大默认对象
来源:互联网 发布:手机黑客入侵软件 编辑:程序博客网 时间:2024/05/20 21:21
jsp九大默认对象
分别是request, response, out, pageContext, session, application, page, config, exception。
让我们看看它们与servlet中变量的对应关系。
首先要明确的是,这九个变量都只在<%%>中有效,<%!%>中是无法调用这九个对象的。实际上<%%>最后会成为service()方法中的代码,我们这里就看看如何在service()方法中获得这些对象吧。
request
public void service(ServletRequest req, ServletResponse res) { HttpServletRequest request = (HttpServletRequest) req;}
jsp中的request就是service()中传入的req参数,因为service中定义的是ServletRequest类型,我们还需要转换成HttpServletRequest类型。
response
public void service(ServletRequest req, ServletResponse res) { HttpServletResponse response = (HttpServletResponse) res;}
与上例相同,response也是service()中传入的res参数。
out
Writer out = response.getWriter();
out对应着从response中取出的writer对象,负责向响应中输出数据。不过jsp和servlet中的out还是有一点区别,虽然它们都实现了java.io.Writer接口,但servlet中实际类型是java.io.PrintWriter,而jsp中实际类型是javax.servlet.jsp.JspWriter。
pageContext
这是jsp独有的,servlet里没有page的概念。
session
HttpSession session = request.getSession();
直接从request中获得会话。
application
ServletConext application = getServletConfig().getServletContext();
可以通过servletConfig获得ServletContext,这是整个web应用共享的一个对象。
page
Object page = this;
page就代表当前jsp对象,也可以直接使用this引用。
config
ServletConfig config = getServletConfig();
这是在servlet初始化时由服务器传入的对象,可以通过它获得web.xml中定义的初始化参数。
exception
想在jsp中使用这个对象需要满足一些条件了。
首先我们要在14-05/index.jsp中故意抛出一个异常。
<%@ page contentType="text/html; charset=gb2312" errorPage="error.jsp"%><% String str = null; str.length();%>
str值是null,直接在null上调用length()方法会引发NullPointerException,然后我们可以看到页面第一行使用jsp指令(directive)设置了errorPage="error.jsp",这样在出现异常的时候就会自动forward到error.jsp中。现在看看error.jsp中有些什么。
<%@ page contentType="text/html; charset=gb2312" isErrorPage="true"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>index</title> </head> <body> <%=exception%> </body></html>
最主要的是在jsp指令(directive)中设置isErrorPage="true",这样我们就可以在jsp中使用exception对象了,实际上这个异常是从request中取出来的。
其中常用的还是四个作用域对应的对象,其他的了解即可。
- jsp九大默认对象
- jsp九大默认对象
- jsp九大默认对象
- jsp九大默认对象
- jsp九大对象
- JSP九大对象
- JSP九大对象
- JSP九大对象
- jsp-九大对象
- JSP九大内置对象
- JSP内置九大对象
- JSP九大内置对象
- JSP九大内置对象
- jsp九大隐士对象
- jsp 九大内置对象
- JSP九大内置对象
- JSP九大内置对象
- JSP九大内置对象
- VC++中的图像类型转换--使用开源CxImage类库
- ASP批量生成静态HTML
- asp.net读取asp的cookies乱码问题
- Flex SDK coding conventions and best practices(官方)
- oracle 物理读,逻辑读的理解
- jsp九大默认对象
- find
- CH12 - 1 文本处理 .net 复习课
- 欲为Java技术大牛所需的25个学习要点
- Linux下如何安装软件
- Apache Maven2
- Oracle中的Hash Join祥解
- sql in
- Maven入门--概念与实例