JSP技术课件

上传人:资****亨 文档编号:156347495 上传时间:2020-12-17 格式:PPT 页数:98 大小:165KB
返回 下载 相关 举报
JSP技术课件_第1页
第1页 / 共98页
JSP技术课件_第2页
第2页 / 共98页
JSP技术课件_第3页
第3页 / 共98页
JSP技术课件_第4页
第4页 / 共98页
JSP技术课件_第5页
第5页 / 共98页
点击查看更多>>
资源描述

《JSP技术课件》由会员分享,可在线阅读,更多相关《JSP技术课件(98页珍藏版)》请在金锄头文库上搜索。

1、第4章 JSP中的对象,JSP的对象也叫内置对象,也有人叫做JSP的内置隐藏对象。它用在jsp表达式和脚本中,不能直接用在jsp声明中。JSP的隐藏对象有:out,request,response,config,session,application,page,pageContext,exception。这些隐藏对象使得JSP使用比Servlet更加简单和方便。这一章,将对JSP的隐藏对象进行介绍。,4.1 在客户端页面输出信息out对象,out隐藏对象是javax.servlet.jsp.JspWriter类的实例。服务器向客户端输出的字符类内容可以通过out对象输出。它是在JSP开发中频繁

2、使用的对象之一。它常用到的方法有: println(String str):用于向客户端输出内容。这个方法是换行输出。它输出一个内容后换行,下一个输出内容在下一行输出。,4.1 在客户端页面输出信息out对象,print(String str):和println(String str)方法一样,是用于向客户端输出内容。不同的是:这个方法是不换行输出。它输出完一个内容后,不自动换行,下一个输出内容在前面的内容之后继续输出。 append(CharSequence cs):用于向out缓存中扩展字符类输出。当缓存满或者执行out.flush()操作时这些内容会输出到客户端浏览器。,4.1 在客户端

3、页面输出信息out对象,clear():用于清除缓冲区中的内容,调用这个方法以后,缓冲区里的内容会被清空。 flush():将缓存内容flush到客户端浏览器,即:输出缓冲区的数据。 isAutoFlush():返回一个布尔值,表示缓存满时是否自动刷新缓冲区。如果返回true,缓存满时自动刷新缓冲区;如果为false,缓存满时会抛出IOException异常。,4.1 在客户端页面输出信息out对象,getBufferSize():以字节为单位,返回缓存大小,单位是KB。 getRemaining():返回缓冲区中剩余的缓存剩余大小,以KB为单位。 close():刷新流以后,关闭流。,4.2

4、 处理客户请求信息request对象,客户端的请求信息被封装在request对象中。这样,在服务端可以通过request对象,接受所有从浏览器发往服务器的请求内的所有信息,然后做出响应。request对象是HttpServletRequest接口的实现,获取的信息内容包括请求的头文件(Header)、浏览器的相关配置信息,请求的方式(GET和POST),请求的参数名称,参数值和客户端的主机名等信息。,4.2.1 什么是request对象,对象request是javax.servlet.ServletRequest类的实例,代表着客户端的请求。request包含客户端的信息以及请求的信息,如请求

5、哪个文件,附带的地址栏参数等。每次客户端请求都会产生一个request实例。客户端的请求信息被封装在request对象中。这样,在服务端可以通过request对象,接受所有从浏览器发往服务器的请求内的所有信息,然后做出响应。request对象是HttpServletRequest接口的实现,,4.2.1 什么是request对象,获取的信息内容包括请求的头文件(Header)、浏览器的相关配置信息,请求的方式(GET和POST),请求的参数名称,参数值和客户端的主机名等信息。 request对象是在客户发出请求时才被创建,请求结束后,销毁这个对象。它作为_jspService方法的一个形参在传

6、递参数。它主要提供的服务有:,4.2.1 什么是request对象,访问客户端请求中的参数。 访问客户端请求中的国际化信息。 访问客户端请求中的请求报头。 访问客户端请求中的安全信息。,4.2.1 什么是request对象,获取客户端的Cookie信息。 管理请求中的属性。 request隐藏对象中有一些常用的方法,通过这些方法来实现request隐藏对象的各个功能,这些方法有以下几种:,4.2.1 什么是request对象,setAttribute(String name, Object value):在request中保存一个对象。本页面内或者forward之后的页面中可以通过getAtt

7、ribute(String name)方法获取该对象。 setCharacterEncoding(String encoding):设置request的编码方式。 getAttribute(String name):从request中获取name对应的对象。,4.2.1 什么是request对象,getMethod():返回request中使用的方法名称,一般为GET或者POST。 getParameter(String key):返回客户端用户提交的参数。 getParameterValues(String key):返回提交的多个同名参数值。以数组形式返回。,4.2.1 什么是reques

8、t对象,getParameterNames():返回所有提交的参数名称。 getCookies():返回所有的Cookie。 getContextPath():返回HTTP请求中,指示请求上下文的部分。,4.2.1 什么是request对象,getHeader(String name):获取request头信息。 getHeaderNames():返回所有的request请求名称。,4.2.2 访问客户端请求中的参数,request隐藏对象中包含了从当前JSP页面的URL查询字符串得到的信息,从MTHL表单中提交的编码数据也包含在request请求中。这些信息到了服务器后,服务器会把这些信息当

9、做Java的String对象,这些String对象用来代表传递的参数名和参数值。在request隐藏对象访问客户端请求的参数时,会通过4.2.1小节中介绍的一些方法检索到请求参数的信息。,4.2.2 访问客户端请求中的参数,当提交方式是post时,提交的内容不会出现在URL地址中。这只是get提交方式和post提交方式的区别之一。下面来简单介绍一下get提交方式和post提交方式的区别: get提交方式是通过在URL里面传递参数,用来传递一些不需要保密的数据,post提交方式是隐式提交参数,在URL中书看不到数据内容的,安全性较高。,4.2.2 访问客户端请求中的参数,get提交方式对提交数据

10、的大小有限制,通过get提交的数据不能超过2KB。post提交方式对提交的数据大小没有限制。 上面的两个例子中,都用到了getParameter、getParameterNames和getParameterValue,通过它们在页面上显示的值,可以对它们有多了解。下面来总结一下他们的用法:,4.2.2 访问客户端请求中的参数,getParameter:是java.lang.String getParameter(java.lang.String name)方法,它以String的形式返回请求参数的值,如果参数不存在,则返回null。 getParameterNames:是java.lang.E

11、nmeration getParameter()方法,它返回的是String对象,包含有请求参数的名称。,4.2.2 访问客户端请求中的参数,getParameterValues:是java.lang.String getParameterValues(java.lang.String name)方法,它返回String对象的数组,包含有请求参数的值,如果参数不存在,则返回null。,4.2.3 访问客户端请求中的国际化信息,软件开发中说的国际化,是指设计和开发出适应不同区域要求的产品。在应用程序的功能和代码设计考虑在不同地区运行的需要,其代码简化了不同本地版本的生产。国际化信息是指,涉及到国

12、际化操作的相关相信,比如浏览器判断用户所在的语言环境,然后根据语言环境来显示页面的语言文字。request隐藏对象可以通过,4.2.3 访问客户端请求中的国际化信息,getLacale()和getLocales()方法,来获取用户浏览器设置的语言环境。下面通过例子来了解一下request隐藏对象是如何访问国际化信息的。,4.2.4 访问客户端请求中的请求报头,request隐藏对象可以通过一些方法来访问在HTTP报头中发送的信息。request隐藏对象中,访问请求报头的方法有以下几种: getDateHeader(java.lang.String name)方法:这个方法返回long值,用来获

13、得name参数指定的日期类型报头的值。,4.2.4 访问客户端请求中的请求报头,getIntHeader(java.long.String name)方法:这个方法返回一个int值,获得name指定的整数类型报头值。 getHeader(java.long.String name)方法:该方法返回一个String值,用来获得name指定的报头值,这个报头必须是已命名的。,4.2.4 访问客户端请求中的请求报头,getHeaders(java.long.String name)方法:该方法返回一个Sing对象的枚举,这些对象代表报头的所有值,这些包头都是已命名的。 getHeaderNames(

14、)方法:该方法返回一个Sing对象的枚举,这些对象代表请求中的所有报头名称,这些报头必须是已命名的。,4.2.5 访问客户端请求中的安全信息,request隐藏对象能够访问请求中的安全信息。它提供了一些方法来访问请求中的安全信息,这些方法有以下几种: isSecure()方法:该方法返回一个boolean值,它用来表示请求是否使用了安全协议。 isRequestedSessionValid方法:该方法返回一个boolean值,用来检查会话Id是否合法。,4.2.5 访问客户端请求中的安全信息,isRequestedSessionIdFromCookie()方法:返回一个boolean值,该方法

15、用来表示是否使用了Cookie来管理会话Id。 isRequestedSessionIdFromURL()方法:返回一个boolean值,个方法用来表示是否使用URL重写来管理会话Id。,4.2.6 获取客户端Cookie信息,Cookie是服务器保存在客户端上的一段文本信息。Cookie是一小段文本信息,它保存了服务端插入客户端的信息。这些信息可以帮助服务器对每个请求进行识别操作。Cookie通常采用一对一的key/value形式保存数据,即Cookie名与Cookie值成对出现的方式来存储。,4.2.6 获取客户端Cookie信息,Cookie主要分为会话Cookie及持久Cookie。会

16、话Cookie随着网页的关闭而自动消失;持久Cookie会以文本形式保存在用户硬盘,它不会随着网页的关闭而消失,直到其超过有效期。有关Cookie的详细信息及应用会在后面的章节中进行详细的讲解。,4.2.6 获取客户端Cookie信息,在服务端如何获取Cookie对象是进行请求识别的重要一环。这一节将介绍request隐藏对象如何获取客户端Cookie信息。,4.2.7 管理请求中的属性,request隐藏对象可以管理存储在HttpServletRequest对象中的属性,这些属性以显式方式存储在HttpServletRequest对象中。JSP中,开发者可以用这些属性在页面和服务器之间传递信息,属性可以是任何Java类型,也可以是自定义的类对象。request隐藏对象通过以下几中方法管理请求中的属性:,4.2.7 管理请求中的属性,getAttributeNames()方法:该方法返回一个java.util.Enumeration,它包含有请求可以使用的属性名称。 removeAttribute(java.lang.String name)方法:该方法没有返回值,传递一个String

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号