博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JSP基本用法(二)隐含对象
阅读量:6721 次
发布时间:2019-06-25

本文共 2931 字,大约阅读时间需要 9 分钟。

一、摘要

  在JSP容器中生成的Servlet类的_jspService()方法中,定义了几个对象,在编写JSP页面时我们可以使用这些隐含对象。

  PageContext pageContext = null;    HttpSession session = null;    ServletContext application = null;    ServletConfig config = null;    JspWriter out = null;    Object page = this;    JspWriter _jspx_out = null;    PageContext _jspx_page_context = null;

  注意:上面的代码没有exception内置对象,只有当页面的page指令的isErrorPage属性为true才会使用exception对象。

  下面将对这些对象进行逐一介绍。

二、application对象

  application对象代表Web应用本身,该对象通常有两个作用:

  1.在整个Web应用的多个JSP、Servlet之间共享数据

  在JSP中设置属性和对应的值:

                <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>            在此处插入标题                <%        application.setAttribute("name", "xujian");    %>        

  在Servlet中利用ServletContext对象的getInitParameter()方法即可获取该属性值:

  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException     {    System.out.print(this.getServletContext().getInitParameter("name"));    }

  2.访问Web应用的配置参数

  在web.xml文件中进行参数配置:

name
xujian

  JSP中可利用application对象的getInitParameter()方法获取配置参数值:

    <%= application.getInitParameter("name")%>

三、config对象

  Config对象代表当前JSP配置信息,该对象在JSP页面较为少用。我们可以在web.xml中配置信息:

config
/Demo.jsp
age
20
config
/config

  然后利用Config对象的getInitParameter()方法获取配置信息:

    <%= config.getInitParameter("age")%>

四、pageContext对象

  pageContext对象代表页面上下文,主要用于访问JSP之间的共享数据。

  • a single API to manage the various scoped namespaces
  • a number of convenience API's to access various public objects
  • a mechanism to obtain the JspWriter for output
  • a mechanism to manage session usage by the page
  • a mechanism to expose page directive attributes to the scripting environment
  • mechanisms to forward or include the current request to other active components in the application
  • a mechanism to handle errorpage exception processing 

  注意:PageContext对象实际上是为我们提供了访问其他隐含对象的统一入口。

五、out对象

  out对象以字符流的形式输出数据,实际上是PrintWriter对象的带缓冲的版本,可以通过page指令的buffer属性来调整缓冲区的大小。

  所有使用out的地方都可以使用输出表达式来代替,<%= ...%>表达式的实质就是out.write(...)。

 六、exception对象

  exception对象表示了JSP页面运行时产生的异常,该对象只在错误页面中才能使用。

  注意:如果一个JSP页面使用errorPage属性定义了错误页面,那么在web.xml文件中定义的错误页面将不会被使用。

七、session对象

  session对象代表一次用户会话(从客户端浏览器连接服务器开始,到客户端浏览器与服务器断开为止),session通常用于跟踪用户的会话信息,如判断用户是否登录系统或者跟踪用户购买商品信息等。

String getId();       //获取session的ID            long getCreationTime();//   获取session的生成时间            long getLashAccessedTime();   // 获取用户最后通过session发送请求时间            long getMaxInactiveInterval();    //获取session生命周期,如果超过这个时间则失效            void invalidate();    // 清空session内容            boolean isNew();      // 判断session是否为“新”的            void setMaxInactiveInterval();  // 设置session生命周期,如果超过这个时间则失效

 

转载地址:http://lwjmo.baihongyu.com/

你可能感兴趣的文章
关于初步搭建完成SSH环境之后,JUnit test 测试成功,页面测试时:@Resource 注入的dao为null...
查看>>
更强大的 code generator 自定义工具
查看>>
PHP 在大多数 Unix 平台
查看>>
革命老区江西省赣州市开发区政府暴力强拆
查看>>
extmail搭建
查看>>
FlowChart.NET中如何更改撤消或重做的属性
查看>>
【进阶篇】Android学习笔记——TextInputLayout
查看>>
python list转换字符串报错TypeError: sequence item 0: expe
查看>>
我的友情链接
查看>>
Android、iOS和Windows Phone中的推送技术
查看>>
活动目录管理工具---使用保存的查询
查看>>
MFC读写文件
查看>>
Ansible8:Playbook循环
查看>>
海淘也疯狂 跨境电商网站8月监测报告
查看>>
【51CTO学院三周年】我的在51CTO学院学习的感想
查看>>
redis+session的共享
查看>>
ls按时间排序输出文件列表
查看>>
03 bash特性
查看>>
Line in和Mic in的区别及使用
查看>>
Linux压缩和解压缩命令
查看>>