书签 分享 收藏 举报 版权申诉 / 41
上传文档赚钱

类型JSP程序设计第3章.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3372455
  • 上传时间:2022-08-24
  • 格式:PPT
  • 页数:41
  • 大小:628KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《JSP程序设计第3章.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    JSP 程序设计
    资源描述:

    1、第第3章章 JSP语法语法3.1 JSP通用语法 掌握一门编程语言要从它的语法开始。本章在介绍JSP的通用语法和脚本元素的基础上,详细介绍JSP的内置对象、指令和动作。3.1JSP通用语法 JSP是由Sun 公司在Java语言上开发出来的一种动态网页制作技术,可以将网页中的动态部分和静态的HTML相分离。用户可以使用平常惯用的工具(如Dreamweaver)并按照平常的方式来书写HTML语句。然后,将动态部分用特殊的标记嵌入即可,这些标记常常以“%”开始并以“%”结束。3.1.1 JSP基本语法3.1.2注释 JSP的注释可分为三种:HTML 注释、隐藏注释和标准Java注释。1.HTML注释

    2、 HTML注释在客户端显示,其语法格式如下:!comment 2.隐藏注释HTML注释会被客户端利用“查看源代码”看到,如果用户不想被客户端看到注释的内容,就应该将其嵌入到“”标记中。JSP编译器会将隐藏注释标记中的字符忽略掉,而不对该语句进行编译。例如:Hidden Comment TestA Test of Hidden Comments 3.标准Java注释 标准Java注释只能包含在脚本代码中。JSP容器不对该部分内容编译,也不会发送到客户端浏览器。标准Java注释的JSP语法如下:/comment 或/*comment*/3.2 JSP脚本元素 单击“下一步”按钮,弹出“摘要”界面。

    3、JSP脚本由三个元素组成,即JSP表达式、JSP脚本程序和JSP声明。JSP表达式包含在“”标签内,JSP脚本程序包含在“”内,JSP声明包含在“”内。3.2.1表达式 表达式是对数据的表示,系统将其作为一个值进行计算和显示。1.语法格式 表达式的语法格式如下:JSP表达式是一个值,包含在“”中,在运行后被自动转化为字符串,然后插入到这个表达式所在的位置中。因为这个表达式的值已经被转化为字符串,所以用户能在一行文本中插入这个表达式。2.注意事项(1)用户不能用分号(;)作为表达式的结束符。(2)一个表达式元素可以是任何一个符合Java 语言规范的表达式,也可以由多个表达式组成。(3)表达式也能

    4、作为其他JSP元素的属性值。3.2.2脚本程序 JSP脚本程序就是在JSP页面里嵌入的一段Java代码。1.语法格式 JSP脚本程序的语法格式如下:3.2.2脚本程序 2.注意事项(1)在脚本程序中也可以像表达式那样随意定义变量。(2)在脚本程序中可以使用任何隐含的对象和任何用声明过的对象,可以编写JSP语句。(3)任何HTML文本标记必须写在脚本程序,即“”对之外。(4)当JSP编译器收到客户端的请求时,脚本程序就会被执行。如果脚本程序有显示内容,这些显示的内容被保存在out 对象中。3.2.3声明 JSP声明就是在JSP页面中声明Java方法或变量等。1.语法格式 JSP声明的语法格式如下

    5、:3.2.2脚本程序 2.注意事项(1)用户可以一次性声明多个变量和方法,但一定要以分号(;)结束变量声明,因为任何内容都必须是有效的Java 语句。(2)用户可以直接使用在“”对中已经声明的变量和方法,不需要对它们重新进行声明。(3)一个声明仅在一个页面中有效。如果要使一些声明在每个页面中都可用,最好把它们写成一个单独的文件,然后用或元素包含进来。(4)声明不能产生任何输出,它通常用作JSP表达式和脚本代码之间的连接。3.3JSP指令 JSP指令是为JSP引擎设计的,JSP指令并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面的相关信息。JSP指令共有三种类型,即 page指令、in

    6、clude指令和 taglib指令,包含在“”内。page 指令用于设置 JSP页面的属性;include 指令用于在 JSP页面嵌入其他文件;taglib 指令用于在JSP页面中创建和使用自定义标签。JSP指令的语法格式如下:3.3.1include指令 include指令用于在运行时将HTML文件或JSP页面嵌入到另一个JSP页面。其语法格式如下:其中,“relativeURL”表示要嵌入文件的路径,它可以是文档相对路径或站点相对路径。3.3.2page指令page指令用于设置 JSP页面的全局属性,其语法格式如下:3.3.3taglib指令 taglib指令的作用是将标签库描述符文件引入

    7、到该页面中,并设置前缀。其语法格式如下:属性说明如下:(1)“URIToTaglibary”是指标签库表述符文件。“uri”是uniform resource identifier的缩写,即统一资源标记符,根据标签的前缀对自定义的标签进行唯一的命名。uri可以是URL(uniform resource locator)、URN(uniform resource name)以及一个相对或绝对路径。(2)“prefix”表示自定义标签前的前缀。3.4JSP内置对象 为了简化页面开发的复杂度,JSP提供了一些可在脚本中使用的内置对象,在使用这些内置对象之前不需要对它们进行声明。通过使用这些对象,可以

    8、使用户更容易收集客户端发送的请求信息,并响应客户端的请求以及存储客户信息。内置对象的名称是 JSP的保留字,JSP使用内置对象来访问网页的动态内容,它一般分为输入/输出对象、作用域通信对象、Servlet对象和错误对象四类。3.4.1输入/输出对象输入/输出对象用于控制页面的输入和输出,访问同请求和响应有关的数据,它包括request、response和out对象。1.request对象request 对象主要用于接收客户端通过HTTP 协议传输到服务器端的数据。客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。2.response对象response对象

    9、主要用来向客户端发送数据,如Cookie HTTP文件头信息等。response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它。3.out对象 out对象创建输出流,用来向客户端输出显示信息,它是javax.servlet.jsp.JspWriter 类的实例,其主要方法如下:3.4.2作用域通信对象1.session对象Web服务器为每个用户发送的多个请求创建会话,会话状态的维持是Web应用开发者必须面对的问题。session对象用来在每一个用户之间分别保存用户信息,对于那些希望通过多个页面完成一个事务的应用是非常有用的。2.application 对象application对

    10、象用来存储有关文档运行环境的信息。与session对象相比,application对象所保存的对象可以被所有用户共享,而session对象则是每个用户专用的。3.PageContext 对象PageContext对象的主要功能是让JSP容器控制其他隐含对象,如对象的生成与初始化、释放对象本身等。PageContext对象为JSP默认的隐含对象,以及其他可用的对象提供了基本的处理方法3.4.3Servlet对象JSP引擎为每个JSP生成一个Servlet,Servlet对象提供了访问Servlet信息的方法和变量。Servlet对象包括page对象和config对象。1.page对象page对象

    11、是java.lang.Object类的一个实例,使用 page 对象可以访问 Servlet类的所有变量和方法。2.config对象config对象用于存储在编译JSP页面的过程中创建的Servlet的信息,它被封装为javax.servlet.ServletConfig 接口,当初始化一个Servlet时,容器把某些信息通过config对象传递到应用该Servlet的对象中。3.4.4错误对象错误对象用于处理JSP页面中产生的错误,常用的错误对象是exception对象。exception对象只能用于由page指令的isErrorPage属性指定的错误处理页。它是java.lang.Thro

    12、wable类的实例,其主要方法如下:(1)getMessage():使用该方法可以返回错误信息。(2)printStackTrace():使用该方法可以以标准错误的形式输出一个错误和错误的堆栈。(3)toString():使用该方法可以以字符串的形式返回一个对异常的描述。3.5JSP动作JSP动作利用XML语法格式的标记来控制Servlet引擎的行为,利用JSP动作可以动态地插入文件。JSP中的动作使用“jsp”作为前缀,且动作中的属性区分大小写。3.5.1jsp:forward动作1.语法格式及说明动作将当前页面的执行过程终止,忽略它的输出,并重定向到一个静态资源、JSP页面,或者一个程序段

    13、。其语法格式如下:jsp:forward page=relativeURL|/如果添加参数,则其语法格式如下:jsp:forward page=relativeURL|jsp:param name=parameterName value=parameterValue|/2.属性及用法(1)page 属性用于说明用户将要重定向的文件的文件名或URL,这个文件可以是JSP程序或者其他能够处理request 对象的文件(如asp、cgi、php文件等)。这个文件名可以是一个表达式或是一个字符串,它们描述了重定向文件的相对URL。(2)标签能够向目标文件传送参数名和值,“name”指定参数名,“val

    14、ue”指定参数值。如果用户使用了标签,参数被发送到一个动态文件,参数可以是一个或多个值,而这个文件却必须是动态文件。要传递多个参数,则可以在一个JSP文件中使用多个将多个参数发送到一个动态文件中。3.5.2jsp:include动作1.语法格式及说明动作可以将外部的静态或动态资源(包括在当前页面中的资源)插入到JSP页面的特定位置。其语法格式如下:jsp:include page=relativeURL|flush=true/还可以使用动作元素设置参数,语法如下:jsp:include page=relativeURL|flush=true jsp:param name=parameterNa

    15、me value=parameterValue|/2.属性及用法(1)page:指定被包含资源的相对路径,该路径相对于当前JSP页面的URL,它不能包含协议名、端口号和域名。(2)flush:设置是否刷新当前页面的缓冲区。(3)param:指定附加的request参数。3.5.3jsp:plugin动作1.语法格式及说明动作用于在JSP页面中嵌入在客户端运行的Java程序(如Applet和JavaBean等),其语法格式如下:jsp:param name=parameterName value=parameterValue|/text message for user 3.5.3jsp:plu

    16、gin动作2.属性及用法(1)type=bean|applet:plugin 将要执行的对象的类型,用户必须指定bean 或者applet,因为这个属性没有缺省值。(2)code=classFileName:plugin 将要被Java 插件执行的Java类的名字,它的名字必须包含.class 扩展名,并且这个code 定义的Java 插件名必须保存在codebase 属性指定的目录中。(3)codebase=classFileDirectoryName:指定将要被执行的Java Class 文件的目录(或者是路径),如果用户没有提供此属性,那么将使用JSP文件的目录。(4)name=inst

    17、anceName:这个属性给出了bean 或applet 实例的名字,以便JSP文件调用。(5)archive=URLToArchive,:archive的值是一些由逗号分开的文件名,这些文件名都是一些将要使用的class,将它们预装在codebase 目录下,可提高applet 程序的执行效率。3.5.3jsp:plugin动作(6)align=bottom|top|middle|left|right:定义了由applet 或bean 产生的图形在结果页面上的显示位置.(7)height=displayPixels 和width=displayPixels:指定applet 或bean 所要

    18、显示图形大小的初始值,displayPixels为数字,单位为像素。(8)hspace=leftRightPixels积vspace=topBottomPixels:指定applet 或bean 所显示的图形在屏幕上下左右所需的余量,取值必须是一个很小的非零数字,单位为像素。(9)jreversion=JREVersionNumber|1.1:指定applet或bean运行所需的Java Runtime Environment(JRE)的版本号,缺省值是1.1。(10)nspluginurl=URLToPlugin:指定Netscape Navigator 用户能够使用的JRE 的下载地址,此

    19、值为一个标准的URL,可以带有协议名、端口号或域名。(11)iepluginurl=URLToPlugin:IE用户能够使用的JRE 的下载地址,此值为一个标准的URL,可以带有协议名、端口号或域名。(12)jsp:param name=parameterName value=parameterValue|/:此属性向applet 或bean 传送参数名或参数值,特别是传送一个以上的参数名字和值时,可使用多个带有元素的标签。(13)text message for user:如果Java 插件不能启动时,提示给用户的信息。如果Java 插件能够启动,而applet 或bean 不能启动,那么浏

    20、览器会弹出一个出错信息。3.5.4jsp:useBean动作1.语法格式及说明JavaBean是可以在多个应用程序中重复使用的组件(后续章节有详细介绍),JSP中对JavaBean的使用正是通过来完成的。寻找或者实例化一个JavaBean,可在JSP页面中提供 JavaBean 组件。其语法格式如下:jsp:useBeanid=beanInstanceNamescope=page|request|session|applicationclass=package.class|type=package.class|class=package.class type=package.class|bea

    21、nName=package.class|type=package.class/2.属性及用法(1)id=beanInstanceName:id 属性定义了在用户所指定范围内,用户所要提取的Bean 的名字,用户能在后面的同一个JSP文件的表达式或脚本程序中看到这个变量名,它区别于不同的Bean。这个变量名对大小写敏感,一定要注意符合用户所使用的脚本语言的规定。如果用户用的是Java编程语言,那么就应该遵从Java 的语言规范。如果这个Bean 已经在别的中创建,那么这个id 的值必须与那个id 的值一致。(2)scope=page|request|session|application:sco

    22、pe 定义了Bean 存在的范围以及id 变量名的有效范围。(3)class=package.class:使用new 关键字以及class 构造器从一个class 中示例一个Bean。这个class 不能是抽象的,必须有一个公用的、没有参数的构造器。这个package 的名字区别大小写。(4)type=package.class:如果这个Bean 已经在指定的范围中存在,那么给这个Bean指定一个新的数据库类型。如果用户没有使用class 或beanName 指定type,Bean 将不会被示例。package 和class 的名字区分大小写。(5)beanName=package.class

    23、|type=package.class:使用java.beans.Beans.instantiate 方法从一个class 或连续模版中示例一个Bean,同时指定Bean 的类型。beanName 可以是package 和class 也可以是表达式,它的值会传给Beans.instantiate.type,其值可以和Bean 相同。package 和class 名字区分大小写。3.5.5jsp:setProperty动作1.语法格式及说明用来设置JavaBean在JSP页面中的属性,其语法格式如下:jsp:setProperty name=beanInstanceNameproperty=*|

    24、property=propertyName param=parameterName|property=propertyName value=string|/2.属性及用法(1)name:描述了Bean实例的名字,而这个Bean实例已经存在或已经由标签创建完成。(2)property=*:储存用户输入的所有数据(被称为请求参数),用于匹配Bean 中的属性。Bean 中的属性的名字必须和request 对象中的参数名一致,这个参数名通常来自于HTML 元素和用户的输入。(3)property=propertyName param=parameterName:使用request 中的一个参数值来指

    25、定Bean 中的一个属性值。其中,property指定Bean 的属性名,param 指定request 中的参数名。如果Bean 属性和request 参数的名字不同,那么就必须指定property 和param;如果相同那么就只需要指明property即可。如果参数值为空(或未初始化),那么对应的Bean 属性也不会被设定。(4)property=propertyName value=string|:使用指定的值来设定Bean 属性,这个值可以是字符串,也可以是表达式。如果值是字符串,那么它就会被转换成Bean 属性的类型,如果它是一个表达式,那么这个表达式的数据类型也必须和它将要设定的属

    26、性值的类型一致。如果参数值为空,那么对应的属性值也不会被设定。3.5.6jsp:getProperty动作1.语法格式及说明动作用来获取Bean的属性的值并将之转化为一个字符串,然后将其插入到输出的页面中,与用来设置属性的动作相对应。其语法格式如下:2.属性及说明(1)name=beanInstanceName:name为必选属性,其值为Bean的名称,由动作标记中的id指出。(2)property=propertyName:property也为必选属性,其值为Bean属性的名字,可以显示。本 章 小 结本章在介绍JSP的通用语法规则和脚本元素的基础上,详细介绍了JSP的内置对象、指令和动作。通过本章的学习,要求对JSP的基本语法有一个较为全面的认识,能够利用相应的指令、内置对象和动作等进行基础的编程。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:JSP程序设计第3章.ppt
    链接地址:https://www.163wenku.com/p-3372455.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库