`
scorpionqxq
  • 浏览: 50105 次
  • 性别: Icon_minigender_1
  • 来自: 西安
最近访客 更多访客>>
社区版块
存档分类
最新评论

jsp九个默认对象

阅读更多
jsp九个默认对象 分别是request, response, out, pageContext, session, application, page, config, exception。

它们与servlet中变量的对应关系如下:

首先要明确的是,这九个变量都只在<%%>中有效,<%!%>中是无法调用这九个对象的。实际上<%%>最后会成为service()方法中的代码,我们这里就看看如何在service()方法中获得这些对象吧。

  1. request

    public void service(ServletRequest req, ServletResponse res) ...{
        HttpServletRequest request  
    = (HttpServletRequest) req;
    }

    jsp中的request就是service()中传入的req参数,因为service中定义的是ServletRequest类型,
    我们还需要转换成HttpServletRequest类型。
  2. response

    public void service(ServletRequest req, ServletResponse res) ...{
        HttpServletResponse response  
    = (HttpServletResponse) res;
    }

    与上例相同,response也是service()中传入的res参数。
  3. out

     

    Writer out = response.getWriter();

    out对应着从response中取出的writer对象,负责向响应中输出数据。不过jsp和servlet中的out还是有一点区别,虽然它们都实现了java.io.Writer接口,但servlet中实际类型是java.io.PrintWriter,而jsp中实际类型是javax.servlet.jsp.JspWriter。

  4. pageContext

    这是jsp独有的,servlet里没有page的概念。

  5. session

    HttpSession session = request.getSession();

    直接从request中获得会话。

  6. application

     

    ServletConext application = getServletConfig().getServletContext();

    可以通过servletConfig获得ServletContext,这是整个web应用共享的一个对象。

  7. page

     

    Object page = this;

    page就代表当前jsp对象,也可以直接使用this引用。

  8. config

     

    ServletConfig config = getServletConfig();

    这是在servlet初始化时由服务器传入的对象,可以通过它获得web.xml中定义的初始化参数。

  9. exception

    想在jsp中使用这个对象需要满足一些条件了。

    首先我们要在14-05/index.jsp中故意抛出一个异常。

                    

    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中取出来的。

其中常用的还是四个作用域对应的对象,其他的了解即可。

转载:http://www.family168.com/tutorial/jsp/html/jsp-ch-14.html#jsp-ch-14-04

分享到:
评论

相关推荐

    Jsp九大内置对象代码

    9. **exception对象**:如果JSP页面抛出未捕获的异常,JSP引擎会将它包装成一个ServletException对象,并将其放入exception变量中。开发者可以检查此对象来处理错误情况。 在"Jsp九大内置对象对应代码"这个压缩包中...

    jsp九大对象总结

    在JSP中,有九个内置对象,它们是由JSP规范提供并由Web容器自动创建和管理的,无需开发者手动实例化。这些对象使得开发过程更加便捷,提高了效率。下面是这九大内置对象的详细介绍: 1. **Request对象**(javax....

    jsp的九大内置对象详细讲解

    9. **page对象**:默认情况下,page对象代表了JSP页面的当前实例,即一个Servlet对象。然而,在实际开发中,我们很少直接使用page对象,因为它的功能往往可以通过pageContext对象获取。 理解并熟练使用这九大内置...

    JSP内置对象(9个常用的内置对象)

    在JSP 2.0规范中,提供了九个内置对象,它们是JSP页面默认提供的、无需显式创建的对象,极大地简化了开发流程并提高了开发效率。以下是对这些内置对象的详细介绍: 1. **pageContext对象**:PageContext对象提供了...

    jsp的九个隐藏对象

    下面将详细介绍这九个隐藏对象及其用法。 1. **pageContext对象**: pageContext对象提供了对请求范围、页面范围、会话范围和应用范围的访问。它可以用来获取或设置任何范围内的属性,并且提供了从请求中获取参数...

    JSP内置对象之域对象和JSP指令

    1. **`pageContext`**: 这个对象的作用范围最小,只限于当前的JSP页面。它提供了一种方式来访问其他JSP内置对象,并且可以用来设置或获取与页面相关的属性。 示例代码: ```jsp ("username", "JohnDoe"); %&gt; ...

    jsp的九个隐含对象

    本教程将深入探讨JSP的九个隐含对象及其用途。 1. **pageContext对象**:这是最全面的隐含对象,它提供了对JSP页面上下文的访问,允许开发者获取或设置其他隐含对象、请求、响应、session、application等对象的属性...

    JSP九大内置对象

    在JSP中,有九个内置对象,这些对象是由JSP容器自动创建并注入到每个JSP页面的,为开发者提供了便利。下面我们将详细探讨这九大内置对象及其用途。 1. **pageContext(页面上下文对象)** - `pageContext` 对象...

    JSP 9大内置对象学习总结

    ### JSP 9大内置对象学习总结 #### 一、Request对象详解 **1. 获取请求参数值** 在Web开发中,我们经常需要处理客户端发送过来的请求,并从中获取特定的参数值。JSP中的`request`对象允许我们轻松地访问这些参数...

    jsp隐含对象详细解析

    JSP内置对象是预定义的对象,它们在JSP页面中默认可用,无需额外声明或创建。下面将详细介绍JSP中的九大内置对象: 1. **out输出流对象** - **类型**:`javax.servlet.jsp.JspWriter` - **作用域**:`page` - *...

    实例详解JSP内置对象--request对象

    在JSP中,request对象是默认存在的,可以直接使用不需要创建或实例化。 二、request对象的主要方法 request对象提供了多种方法来访问和处理HTTP请求信息,常用的方法有: * getParameter(String name):获取指定...

    jsp内置对象的使用

    9. **exception对象**:当JSP页面抛出未捕获的异常时,这个对象被自动创建并包含异常信息。在错误处理页中,可以使用`exception`对象来显示错误详情。 在实际开发中,我们通常结合使用这些内置对象来完成各种任务。...

    jsp中Session对象源码

    在JavaServer Pages (JSP) 技术中,`Session` 对象是一个非常重要的概念,它用于跟踪用户会话状态。在Web应用中,当用户访问网页时,服务器可能需要记住用户的一些信息,如购物车内容、登录状态等,这时就需要用到...

    jsp内置对象及jsp复用

    9. **page对象**:默认情况下,它引用的是当前JSP页面的Servlet实例,可以访问Servlet的方法和变量。 **JSP复用** JSP复用主要涉及以下两个方面: 1. **JSP指令**:比如`&lt;%@ include file="...jsp" %&gt;`, 这个指令...

    JSP应用开发-JSP内置对象.pptx

    JSP内置对象是指可以在JSP页面脚本中不加声明就可以使用的默认对象。这些对象是JSP容器自动创建的,不需要开发人员实例化。在JSP页面初始化时生成,在所有的JSP页面都能使用。 二、JSP内置对象的类型 JSP内置对象...

    Jsp内置对象参考手册.chm+JSP内置对象详细讲解

    在JSP中,有九个内置对象,它们是由服务器自动创建并提供给每个JSP页面的,无需开发者显式声明。这些内置对象是开发JSP应用的基础,理解并熟练运用它们能够极大地提高开发效率。 1. **pageContext对象** - `...

    jsp九大内置对象

    ### jsp九大内置对象 #### 一、Request对象 **定义**:`Request`对象用于封装用户提交的信息,可以通过调用其相应的方法获取这些信息。它对于处理客户端发送过来的数据至关重要。 **乱码问题处理**:当从`Request...

    jsp九大内置对象实例代码学习,可运行,有注释

    在JavaServer Pages (JSP) 技术中,有九个内置对象,它们为开发者提供了直接访问服务器资源和处理请求的能力,无需显式创建。这些内置对象是JSP页面生命周期的一部分,大大简化了Web应用程序的开发。以下是这九个...

Global site tag (gtag.js) - Google Analytics