JSP 九大内置对象

JSP内置对象简单说明

内置对象,跟字面理解一样,就是嵌套在jsp页面中的不需要我们去定义的实例化的对象。在这些对象有的是

  • 用于存储数据的,如request、response、session、application
  • 提供输出打印的,如 out
  • 其他功能的,如page 表示jsp页面本身,可以定义jsp页面属性,与类中this关键字相当,pageContext可以获取jsp上下文数据,config,表示jsp的ServletConfig,可以通过config获取ServletConfig的内容。

各内置对象的用法

  1. out(负责管理客户端的输出)

       用于向客户端输入各种类型的数据
     输出数据有两种方法 out.print() out.println() 
       可以对应用服务器的输出缓冲区进行管理(一般很少这样手动设置,都是使用服务器默认的大小设置)
     下面的方法与缓冲区有关
      void close() 关闭输出流 
      void clear() 清除缓冲区数据,且不把数据写到客户端中去
      void claerBuffer() 清除缓冲区数据,但将数据写到客户端中去
      void flush() 输出缓冲区的数据,但是会将缓冲区先前的数据输出至客户端,然后清除缓冲区的数据
      int getRemaining() 获取缓冲区未被占用的空间大小
      int getBufferSize() 得到缓冲区的大小
    
  2. request(得到客户端的信息)

      主要获取客户端的参数和流(对应 javax.servlet.http.HttpServletRequest)。但是还可以
    获取客户端的基本信息。
    String getMethod() 获取提交方式
    String getRequestURI() 获取请求的URL地址
    String getProtocal() 获取协议名称
    String getServletPath() 获取客户端的请求服务器文件所在的路径 
    String getQueryString() 获取url上参数部分,post提交方式不可用
    String getServerName() 获得服务器名称 IP地址或域名
    String getServerPort()  获得服务器端口号
    String getServerAddr() 获得客户端的IP地址
    
  3. response(向客户端发出响应)

      服务器相应对象,对应javax.servlet.http.HttpServletReponse.经常使用于重定向或服务器内跳转。
    response.sendRedirect("index.jsp") 路径可以是相对路径也可以是绝对路径,但是绝对路径需要将
    虚拟路径写全。如:/Root/index.jsp。
    <jsp:forwrad page="index.jsp"></jsp:forwrad> forwrad跳转浏览器路径不会放生变化,并共享Request
    域的数据,重定向不共享的;forwrad跳转路径必须是同一站点的,可以理解为服务器内部跳转。
    forwrad跳转效率更高
    response.sendError(400) 也是进行跳转的,旨在向客户端发送HTTP状态码的错误信息。
      可以设置HTTP的响应头
    response.setHeader("Pragam","No-cache")
    response.setHeader("Cache-Control","no-cathe")
    response.setDateHeader("Expires",0) 都是表示客户端缓存中不保存页面的拷贝。
    response.setHeader("Refresh","5") 浏览器每个5秒中刷新一次
    
  4. session (保存同意客户端的会话过程中的一些信息)

      Session 的实现是基于 Cookie 的,默认配置下,用户 Session 的内容加密后直接存储在 Cookie 中
    的一个字段中,用户每次请求我们网站的时候都会带上这个 Cookie,我们在服务端解密后使用。
      session.setAttribute("key","value") 可以设置session属性,以键值对保存。
      session.getAttribute("key")获取session中键名为key的属性的值。
       session.removeAttribute("key") 移除session中键名为key的属性。
       session.invalidate() 将移除session中所有的内容。
    
  5. application(整个应用的环境信息 相当于全局变量)

      三个常用的方法,存储在application域中数据可以被所有用户共享.
    void setAttribute(String name,Object obj);
    Object getAttribute(String name);
    void removeAttribute(String name);
    
  6. exception(可以通过它获取异常信息)

  7. page (jsp自身页面,相当类中的this关键字)

  8. pageContext(jsp页面的上下文)

  9. config(当前jsp页面的上下文)

  10. cookie (cookie 操作)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值