ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:333.76KB ,
资源ID:20295864      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20295864.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(信产部考试题第一套题库Word文档下载推荐.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

信产部考试题第一套题库Word文档下载推荐.docx

1、requestjavax.servlet.http.HttpServletRequestresponsejavax.servlet.http.HttpServletResponsepageContextjavax.servlet.jsp.PageContextsessionjavax.servlet.http.HttpSessionapplicationjavax.servlet.ServletContextoutjavax.servlet.jsp.JspWriterconfigjavax.servlet.ServletConfigpagejava.lang.Objectexceptionja

2、va.lang.Throwable其中request,response,session,application和config对象所属的类及其用法在前面的Servlet章节中我们已经介绍过了,下面主要介绍一下其他的对象。12.4.1 pageContextpageContext对象提供了访问其他隐含对象的方法,如下:? public abstract javax.servlet.ServletRequest getRequest() public abstract javax.servlet.ServletResponse getResponse() public abstract javax.

3、servlet.http.HttpSession getSession() public abstract javax.servlet.ServletContext getServletContext() public abstract JspWriter getOut() public abstract javax.servlet.ServletConfig getServletConfig() public abstract java.lang.Object getPage() public abstract java.lang.Exception getException()在pageC

4、ontext对象中,可以使用下面两个方法来保存和获取属性。 public abstract void setAttribute(java.lang.String name, java.lang.Object value) public abstract java.lang.Object getAttribute(java.lang.String name)在pageContext对象中保存的属性,只能在当前页面中去获取,也就是说,pageContext对象具有页面范围(详见12.5节)。利用pageContext对象,还可以设置和得到在其他范围对象中保存的属性。pageContext对象提供了

5、另外两个setAttribute()和getAttribute()方法,如下: public abstract void setAttribute(java.lang.String name, java.lang.Object value, int scope) public abstract java.lang.Object getAttribute(java.lang.String name, int scope)其中的scope参数用于指定要获取哪一个范围对象的属性,有四个可能的取值,其中PageContext. PAGE_SCOPE表示页面范围,PageContext.REQUEST_

6、SCOPE表示请求范围,PageContext.SESSION_ SCOPE表示会话范围,PageContext.APPLICATION_SCOPE表示Web应用程序范围。在pageContext对象中,可以使用下面两个方法来删除范围中的属性。 public abstract void removeAttribute(java.lang.String name, int scope)删除指定范围内名字为name的属性。 public abstract void removeAttribute(java.lang.String name)删除所有范围内名字为name的属性。pageContext

7、对象还提供了搜索属性的方法: public abstract java.lang.Object findAttribute(java.lang.String name)该方法会按照page,request,session和application范围的顺序搜索指定名字的属性,如果找到,则返回属性的值,如果没有找到,则返回null。关于范围,请参见12.5节。pageContext对象也提供了请求转发的两个方法forward()和include(),其内部实现是调用RequestDispatcher对象的forward()和include()方法。从pageContext对象提供的方法可以看出,p

8、ageContext对象实际上是为我们提供了访问其他隐含对象的统一入口,在多数情况下,直接利用pageContext对象就可以完成想要实现的功能。12.4.2 outout对象的类型是javax.servlet.jsp.JspWriter,该类从java.io.Writer类派生,以字符流的形式输出数据。out对象实际上是PrintWriter对象的带缓冲的版本(在out对象内部使用PrintWriter对象来输出数据),可以通过page指令的buffer属性来调整缓冲区的大小,默认的缓冲区是8kb。在out对象中,提供了几个和缓冲区操作相关的方法,如下所示。 public abstract

9、void clear() throws java.io.IOException清除缓冲区中的内容。如果缓冲区已经被刷新,clear()方法将抛出IOException异常。 public abstract void clearBuffer() throws java.io.IOException清除缓冲区中的当前内容。这个方法和clear()方法的区别是,如果缓冲区已经被刷新,这个方法不会抛出IOException异常。 public abstract void close() throws java.io.IOException刷新缓冲区,关闭输出流。注意,我们在编写JSP页面时,不需要显式

10、地去调用这个方法,因为在JSP容器所生成的代码中会自动包含对close()方法的调用。 public abstract void flush() throws java.io.IOException刷新缓冲区。 public int getBufferSize()获得out对象使用的缓冲区的大小。 public abstract int getRemaining()获得缓冲区中未使用的字节数。 public boolean isAutoFlush()判断out对象是否是自动刷新。out对象针对不同的数据类型,提供了多个重载的print()和println()方法,用于输出数据。要注意的是,虽然

11、println()方法会输出一个换行,但是客户端的浏览器在显示页面时会忽略输出的换行。12.4.3 pagepage对象是当前页面转换后的Servlet类的实例。从转换后的Servlet类的代码中,可以看到这种关系:Object page = this;在JSP页面中,很少使用page对象。12.4.4 exceptionexception对象表示了JSP页面运行时产生的异常,该对象只有在错误页面(在page指令中指定属性isErrorPage=true的页面)中才可以使用。在JSP页面中,我们可以利用page指令的errorPage属性指定一个错误处理页面,当JSP页面运行发生错误时,JSP

12、容器会自动调用指定的错误处理页面。要注意的是,如果一个JSP页面使用errorPage属性定义了错误页面,那么在web.xml文件中定义的任何错误页面将不会被使用。下面我们看一个例子:price.jsp%String strPrice=request.getParameter(price);double price=Double.parseDouble(strPrice);out.println(Total price = +price * 3);%excep.jsp%page isErrorPage=trueexception.toString():brout.println(excepti

13、on.toString();pexception.getMessage():out.println(exception.getMessage();在price.jsp页面中,通过page指令的errorPage属性指定错误处理页面为excep.jsp。在excep.jsp页面中,通过page指令的isErrorPage属性指定当前页面是错误处理页面,只有设置了isErrorPage为true,在此页面中才可以使用exception对象。我们访问price.jsp页面时,输入URL:http:/localhost:8080/ch12/price.jsp?price=5.0将看到输出:Total

14、price = 15.0如果输入:price=abc将看到如下的错误信息:java.lang.NumberFormatException: For input string: abcFor input string:在JSP页面中的对象,包括用户创建的对象(例如,JavaBean对象)和JSP的隐含对象,都有一个范围属性。范围定义了在什么时间内,在哪一个JSP页面中可以访问这些对象。例如,session对象在会话期间内,可以在多个页面中被访问。application对象在整个Web应用程序的生命周期中都可以被访问。在JSP中,有4种范围,如下所示。 page范围具有page范围的对象被绑定到j

15、avax.servlet.jsp.PageContext对象中。在这个范围内的对象,只能在创建对象的页面中访问。可以调用pageContext这个隐含对象的getAttribute()方法来访问具有这种范围类型的对象(pageContext对象还提供了访问其他范围对象的getAttribute方法),pageContext对象本身也属于page范围。当Servlet类的_jspService()方法执行完毕,属于page范围的对象的引用将被丢弃。page范围内的对象,在客户端每次请求JSP页面时创建,在页面向客户端发送回响应或请求被转发(forward)到其他的资源后被删除。 request范

16、围具有request范围的对象被绑定到javax.servlet.ServletRequest对象中,可以调用request这个隐含对象的getAttribute()方法来访问具有这种范围类型的对象。在调用forward()方法转向的页面或者调用include()方法包含的页面中,都可以访问这个范围内的对象。要注意的是,因为请求对象对于每一个客户请求都是不同的,所以对于每一个新的请求,都要重新创建和删除这个范围内的对象。 session范围具有session范围的对象被绑定到javax.servlet.http.HttpSession对象中,可以调用session这个隐含对象的getAttri

17、bute()方法来访问具有这种范围类型的对象。JSP容器为每一次会话,创建一个HttpSession对象,在会话期间,可以访问session范围内的对象。 application范围具有application范围的对象被绑定到javax.servlet.ServletContext中,可以调用application这个隐含对象的getAttribute()方法来访问具有这种范围类型的对象。在Web应用程序运行期间,所有的页面都可以访问在这个范围内的对象。下面我们通过几个简单的例子,来看一下这4种范围对象的应用。1测试page范围test1.jsppageContext.setAttribute

18、(name,zhangsantest1.jsp:out.println(pageContext.getAttribute();pageContext.include(test2.jsptest2.jsptest2.jsp:访问test1.jsp,将看到如下的输出: zhangsan null说明保存在pageContext对象中的属性具有page范围,只能在同一个页面中被访问。2测试request范围修改test1.jsp和test2.jsp,如下所示。request.setAttribute(out.println(request.getAttribute( zhangsan说明保存在req

19、uest对象中的属性具有request范围,在请求对象存活期间,可以访问这个范围内的对象。将这一句注释起来,先访问test1.jsp,再访问test2.jsp,可以看到如下输出:这是因为客户端开始了一个新的请求。3测试session范围session.setAttribute(out.println(session.getAttribute(先访问test1.jsp,然后在同一个浏览器窗口中访问test2.jsp,可以看到如下输出:说明保存在session对象中的属性具有session范围,在会话期间,可以访问这个范围内的对象。如果我们在访问完test1.jsp后,关闭浏览器,重新打开浏览器窗口,访问test2.jsp,将看到如下输出:这是因为客户端与服务器开始了一次新的会话。4测试application范围application.setAttribute(out.println(application.getAttribute(先访问test1.jsp,然后关闭浏览器,再打开浏览器窗口,访问test2.jsp,可以看到如下输出:说明保存在application对象中的属性具有application范围,在Web应用程序运行期间,都可以访问这个范围内的对象。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1