`
laorer
  • 浏览: 428129 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

jsp中的ServletContext

阅读更多
12月27日

jsp中的隐藏对象

隐含对象(Implicit Objects

作为JSP开发人员,你经常会隐含的访问那些在所有的JSP文件中都可以使用的对象。

如果你使用了这些对象,它们会被JSP引擎分析出,并在生成servlet时插入到对应的位置。

 

Out对象

Out隐含对象来源于java.io.Writer类,它用于发送输出流到客户端。

最通用的时out.println()方法,它来打印文本信息到客户端浏览器。

列表2.8显示了使用out隐含对象的例子:

--------------------------------------------------------------------------

<%@ page errorPage="errorpage.jsp" %>

<html>

<head>

<title>Use Out</title>

</head>

<body>

<%

// Print a simple message using the implicit out object.

out.println("<center><b>Hello Wiley" +

" Reader!</b></center>");

%>

</body>

</html>

--------------------------------------------------------------------

为了执行这个例子,复制文件到

<CATALINA_HOME>/webapps/ wileyapp/ 目录下,在浏览器中输入如下地址:

http://localhost:8080/wileyapp/out.jsp

你会看到:Hello Wiley Reader!

 

Request对象

这个隐含对象来源于javax.servlet.http.HttpServletRequest接口。它被关联到每一个HTTP请求。常用它来访问请求参数。你可以调用request对象的带参数名称的getParameter()方法,它将返回一个和参数名称匹配的字符串。

Request对象的使用例子如下

列表2.9: request.jsp.

-----------------------------------------------------------------------

<%@ page errorPage="errorpage.jsp" %>

<html>

<head>

<title>UseRequest</title>

</head>

<body>

<%

out.println("<b>Welcome: " +

request.getParameter("user") + "</b>");

%>

</body>

</html>

----------------------------------------------------

JSP通过参数user调用request.getParameter()方法。这个方法寻找参数列表中的键值user来返回数据。在浏览器中输入如下:

http://localhost:8080/wileyapp/request.jsp?user=Robert

可以看到输出:Welcome:Robert

 

Response对象

response隐含对象来源于javax.servlet.http.HttpServletResponseresponse对象用于把取得的数据返回到客户端。这个隐含对象可以实现HttpServletRequest所有的功能,和你在servlet处理没有什么区别。Response对象经常用于向客户端输出信息。然而JSP API已经提供了一个流对象out来输出信息到客户端。

 

PageContext对象

PageContext对象提供访问JSP页面的命名空间。它也提供用来访问其他的JSP隐含对象。比较常用的是使用setAttribute() getAttribute()方法设置和寻找对象。

 

Session对象

Session对象来源于javax.servlet.http.HttpSession。它用于存储客户端请求的信息,因此它是有状态交互式的。

Session对象列表如下:

 

列表2.10: session.jsp.

-------------------------------------------------------------------------------------

<%@ page errorPage="errorpage.jsp" %>

<html>

<head>

<title>Session Example</title>

</head>

<body>

<%

// get a reference to the current count from the session

Integer count = (Integer)session.getAttribute("COUNT");

if ( count == null ) {

// If the count was not found create one

count = new Integer(1);

// and add it to the HttpSession

session.setAttribute("COUNT", count);

}

else {

// Otherwise increment the value

count = new Integer(count.intValue() + 1);

session.setAttribute("COUNT", count);

}

out.println("<b>You have accessed this page: "

+ count + " times.</b>");

%>

</body>

</html>

 

复制文件到

<CATALINA_HOME>/wileyapp/ 目录,在浏览器中输入地址:

http://localhost:8080/wileyapp/session.jsp

如果你刷新页面访问次数会增加。

 

Application对象

Application对象来源于javax.servlet.ServletContext,在本章的前面已讨论过ServletContextApplication对象用于访问存储在ServletContext中的全局范围的对象。Application对象的使用方法可以在本章前面部分看到,在次不做叙述。

 

Config对象

Config对象来源于ServletConfig,它包含了当前JSP/Servlet所在的WEB应用的配置信息。

 

Page对象

Page对象来源于当前被访问JSP页面的实例化。它实际使用的是JSP转换成的Servlet

 

Exception对象

Exception对象用于捕获JSP抛出的异常。它只有在JSP页面属性isErrorPage=true时才可用。

关于Jsp中的Application对象

ServletContext

ServletContext是定义在javax.servlet包中的对象。它定义了用于WEB应用中的服务器端组件关联servlet容器的方法集合。

ServletContext经常被用于存储对象的区域,这些对象在WEB应用中的所有的服务器端组件中使用。你可以把ServletContext当作在WEB应用中共享的存储区域。把一个对象放置到ServletContext中时,它存在于WEB应用的整个生命周期中,除非它被明确的删除或替换。ServletContext中定义了四个方法来实现存储区的共享功能。

2.1描述了四个方法:

方法名

描述

setAttribute(String name,Object obj)

通过名称绑定一个对象并存储对象到当前ServletContext。如果指定的名称已经被使用过,这个方法会删除旧对象绑定为新对象。

getAttribute(String name)

返回指定名称的对象,如果名称不存在返回null

removeAttribute(String name)

ServletContext中删除指定名称的对象

 

getAttributeNames()

 

返回在ServletContext中的指定名称的对象集合

 

ServletContext在jsp中所对应的就是application, application为ServletContext的一个引用

 

示例:

Servlet中

// 获取ServletContext

ServletContext context = getServletContext();

// 获取

String userName = (String)context.getAttribute("USERNAME");

 

在对应的Jsp中

String userName = (String)application.getAttribute("USERNAME");

 


分享到:
评论

相关推荐

    jsp跳转的五种方式

     由于response是jsp页面中的隐含对象,故在jsp页面中可以用response.sendRedirect()直接实现重定位。  注意:  (1) 使用response.sendRedirect时,前面不能有HTML输出  这并不是绝对的,不能有HTML输出其实是...

    韩顺平sevlet,jsp视频教程知识点.txt

    (一) java EE核心十三种技术介绍 (二) java EE程序员修炼成精的法门(卖油翁的故事) (三) jsp版本的用户管理系统演示 (四) jsp的概述(基本语法) (五) jsp的运行原理(还是hello.jsp) (六) jsp版的计算器 6.1 jsp中如何...

    JSP2.0技术手册pdf(带示例源码).zip

    11-8 ServletContext Listener 11-9 HttpSession Listener 11-10 ServletRequest Listener 第十二章 JSP 执行环境与开发工具 12-1 Tomcat 5.0 的介绍 12-2 JSP 开发工具介绍 12-3 Eclipse 简介与安装 12-4 使用 ...

    jsp基础精华详解

    四种会话跟踪方式: 1.Session HttpSession session = request....ServletContext:Servlet上下文对象 它是一个公共区域,可以被所有的客户端共享 setAttribute():向公共区域里放入数据 getAttribute():从公共区域里取数据

    基于网页1对多的聊天室(java+servlet+jsp)

    这是我做的一个小项目,没有涉及到数据库,只是用java+servlet+jsp这些技术实现了可以在网页上进行聊天(聊天纪录主要保存在servletContext里面),该项目主要是实现的功能是客户和客服之间的关系。多个客户可以与一...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    jsp+mysql网上投票系统

    jsp网上投票系统功能很齐全,与大家共享。

    jsp有哪些内置对象?作用分别是什么?分别有什么方法?

     applicaton 表示一个javax.servle.ServletContext对象。这有助于查找有关servlet引擎和servlet环境的信息  config表示一个javax.servlet.ServletConfig对象。该对象用于存取servlet实例的初始化参数。  page...

    jsp day1技术解析(servlet/jsp)课件下载

    ServletContext 1 ServletConfig.getServletContext(); 2 ServletContextEvent.getServletContext(); 3 HttpSession.getServletContext(); ------------------------------------------------ JSP Java Server...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    投票系统,基于mvc开发,jsp+servlet+mysql

    import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet....

    jsp内置对象的用法

    定义:可以不加声明就在JSP页面脚本(Java程序片和Java表达式)中使用的成员变量 JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应): 1.request对象 客户端的请求信息被封装在request对象中,通过它...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    JSP Simple Examples

    It mostly contains the request information, ServletContext initialization parameters, ServetContext attributes, request headers, response headers etc. sendRedirect In JSP sendRedirect() method is a ...

    JSP监听器用法分析

    本文实例讲述了JSP监听器用法。分享给大家供大家参考,具体如下: 监听器也叫Listener,是servlet服务的监听器。它可以监听客户端的请求,服务端的操作等。比如统计在线用户数量。每当增加一个HttpSession时,就会...

    数据库测试test.sql

    再存放到application作用域中 context.setAttribute("count",count2); //http://192.168.58.250:8080/myservlet2/servlet/admin/success.jsp response.sendRedirect("../admin/success.jsp"); }else{ //失败...

    jsp内置对象及方法详细介绍

    request javax.servlet.http.HttpServletRequest request response javax.servlet.http.HttpServletResponse response pageContext javax.servlet.jsp.PageContext page session javax.servlet.http.HtpSession session application javax.servlet.jsp.ServletContext applicat

    JSP 从配置文件获取参数详解

    这一节将介绍 ServletContext 和 ServletConfig 这两个接口。 通过这两个接口,我们可以在web.xml中设置一些参数,如数据库地址、用户名密码等,供 Servlet 使用, 这样每次参数值变动时,不用重新编译Servlet了。 ...

    JSP安装运行步骤及遇错处理方法(全集)

    JSP安装运行步骤及遇错处理方法,包括安装JDBC步骤、安装Tomcat步骤、JAVA连接SQL2005的问题以及安装运行过程中可能出现的问题。如An error occurred at line: 23 in the generated java file The method ...

Global site tag (gtag.js) - Google Analytics