zoukankan      html  css  js  c++  java
  • 9.JSP进阶

    1.JSP内置对象

           JSP容器在_jspService()方法中声明并初始化9个内置对象。

    名称

    作用

    接口/类

    out

    客户端打开的输出流

    javax.servlet.jsp.JspWriter 接口

    application

    为多个应用程序保存信息

    javax.servlet.ServletContext 接口

    session

    为每个用户保存信息

    javax.servlet.http.HttpSession 接口

    request

    封装客户端HTTP请求信息

    javax.servlet.http:HttpServletRequest 接口

    response

    封装返回HTTP客户端响应信息

    javax.servlet.http:HttpServletResponse 接口

       内置对象out

        类型:Javax.servlet.jsp.JspWriter

        作用:主要用来向客户端输出数据

        作用域:page.也就是说,每个页面都有一个自己的out对象。

        重写方法:print()/println()/write()    向客户端页面输出数据

       内置对象request

       类型::Javax.servlet.http.HttpServletRequest

       描述:  来自客户端的请求经Servlet容器处理后,由request对象进行封装。注意:

                 客户端和服务器的一次通信就是一次请求(发送请求或者得到相应)。

       作用域:request.说明,这次请求结束后,它的生命周期就结束了。

       

    重要方法:
    getParameter(key) 获取提交表单的数据
    getParameterValues(key) 获取提交表单的一组数据
    getRequestDispatcher(“list.jsp”).forward(request,response) 转发请求到list.jsp页面
    setAttribute(key,Object) 设置请求作用域的key对应的值
    getAttribute(key) 获取请求作用域key所对应的值
    setCharacterEncoding(“UTF-8”) 对请求数据指定编码

       内置对象response

     类型:Javax.servlet.http.HttpServletResponse

    描述:它封装了JSP的响应,然后被送到客户端以响应客户的请求。

    作用域:page;

    重要方法:
    sendRedirect(“list.jsp”) 页面跳转
    setCharacterEncoding(“UTF-8”) 设置响应编码

      内置对象sessoin:

      类型:Javax.servlet.http.HttpSesion;

       描述:表示一个会话,用来保存用户信息,以便跟踪每个用户的状态。(不要用来保存业务数据, request)‘

      定义:是指在一段时间内客户端和服务器之间的一连串的相关的交互过程。

     作用域:Session

      

    重要方法:
    getId() 获取session的id号
    Isnew() 判断session是新建的
    setAttribute(key,Object) 向当前会话设置一个值
    getAttribute(key) 获取当前会话中key所对应的值
    removeAttribute(key) 删除当前会话key所对应的值
    setMaxInactiveInterval(1000*60) 设置session失效时间,Tomcat默认时长为30分钟
    Invalidate() 销毁当前会话,一般用于删除当前会话中所有数据

     内置对象application

    类型:javax.servlet.ServletContext
    描述:从servlet配置对象获得的servlet上下文
    作用域:application
    重要方法:
    setAttribute(key,Object) 向当前application设置一个值
    getAttribute(key) 获取当前application中key所对应的值
    removeAttribute(key) 删除当前application中key所对应的值

      内置对象pageContext

    类型:javax.servlet.jsp.PageContext
    描述:本JSP的页面上下文
    作用域:page

      内置对象congfig和page

    config
    类型:javax.servlet.ServletConfig
    描述:本JSP的 ServletConfig
    作用域:page
    page
    类型:java.lang.Object
    描述:实现处理本页当前请求的类的实例(javax.servlet.jsp.HttpJspPage),转换后的Servlet类本身
    作用域:page

       内置对象exception 

    类型:java.lang.Exception
    描述:本JSP页面的异常对象
    作用域:page

     2.JSP作用域

    JSP页面中的对象,包括用户创建的和JSP内置对象都有一个范围属性
    JSP中共有4种作用域范围

    作用域

    描述

    方法

    Application

    具有应用程序作用域的对象,在应用程序存活期间均可用

    setAttribute(String name,Object attribute)

    getAttribute(String name)

    Session

    具有会话作用域的对象,在会话的存活期间可用

    Request

    具有请求作用域的对象,在所有处理同一个请求的页面内都可以访问

    Page

    具有页面作用域的对象,在当前页内可用

    Application作用域范围最大
    可以被不同页面、不同用户共享
    可以通过application内置对象或ServletContext访问Application作用域对象

    Session作用域范围仅次于Application作用域
    可以被同一个客户端的请求访问
    可以通过session内置对象访问Session作用域对象

    request作用域范围小于Session作用域:

    可以被forward()方法转向页面或者include()包含页面访问
    可以通过request内置对象访问request作用域对象

    Page作用域范围最小
    只能被创建对象的页面访问
    可以通过pageContext内置对象访问Page作用域对象

  • 相关阅读:
    BZOJ3000 斯特林公式
    组合数学一些结论
    CSP2019-JS 游记(总结)
    Atcoder AGC1~10 problem list
    ioi2015hw
    NOI2017解题报告
    HNOI2021游记
    4月做题记录
    WC2021题解
    P4592 [TJOI2018]异或
  • 原文地址:https://www.cnblogs.com/Firesun/p/9684923.html
Copyright © 2011-2022 走看看