JSP语法详解

上传人:小*** 文档编号:242963158 上传时间:2024-09-12 格式:PPT 页数:37 大小:250KB
返回 下载 相关 举报
JSP语法详解_第1页
第1页 / 共37页
JSP语法详解_第2页
第2页 / 共37页
JSP语法详解_第3页
第3页 / 共37页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第3章,JSP,语法详解,3.1,JSP,文件的组成,3.3,JSP,脚本元素,3.4,JSP,指令元素,3.5,JSP,动作元素,3.2,JSP,注释方式,3.1,JSP,文件的组成,3.1.1,JSP,页的创建,3.1.2,JSP,文件的组成元素,3.1.3,JSP,转义字符,返回,一个简单的,JSP,页面:,JSP,页的创建,第一个,JSP,程序,运行效果:,返回,JSP,文件的组成元素(1),1,JSP,中的指令标识,利用,JSP,指令可以使服务器按照指令的设置来执行动作和设置在整个,JSP,页面范围内有效的属性。例如:,2,HTML,标记语言,HTML,标记语言在,JSP,页面中作为静态的内容,浏览器将会识别这些,HTML,语言并执行。在,JSP,程序开发中,这些,HTML,标记语言主要负责页面的布局、设计和美观,可以说是网页的框架。,JSP,文件的组成元素(2),3,加入,Java,代码,加入到,JSP,页面中的,Java,代码,在客户端浏览器中是不可见的。它们需要被服务器执行,然后由服务器将执行结果与,HTML,标记语言一同发送给客户端进行显示。通过向,JSP,页面中加入,Java,代吗,可以使该页面生成动态的内容。例如:,4,JSP,表达式,JSP,表达式主要用来输出,它可以向页面输出内容显示给用户,还可以用来动态的指定,HTML,标记中属性的值。,例如:,返回,JSP,转义字符,转义字符是以“,”开头的特殊字符,在屏幕上是不能显示的,而且在程序中无法用一般形式的字符表示,只能用这种特殊形式表示。常见的转义字符如表所示:,字符形式,描述,n,换行符,将当前位置移到下一行开头,与,元素是相同的,t,制表符,跳转到下一个,tab,位置,b,退格符,将当前位置移到前一列,r,回车符,将当前位置移到本行开头,f,换页符,将当前位置移到下页开头,反斜杠字符“”,单引号字符,双引号字符,返回,3.2,JSP,注释方式,3.2.1,HTML,注释,3.2.2,JSP,隐藏注释,3.2.3,脚本段注释,注释语句可以帮助程序员识别和理解程序代码。在,JSP,页面中主要存在,3,种注释方式,分别为,HTML,注释、,JSP,隐藏注释及脚本段注释,返回,HTML,注释,HTML,注释的语法格式如下:,HTML,注释将被发送到客户端,但不直接显示,用户在客户端源代码中可以查看到。,例如:,返回,JSP,隐藏注释,JSP,注释语句在传输到客户端的过程中会被过滤掉,不会发送到客户端。,JSP,隐藏注释语法格式如下:,例如:,返回,脚本段注释,脚本段中包括两种注释方式:单行注释和多行注释,1,单行注释,单行注释是以“,/,”符号后面的所有内容为注释内容,服务器对该内容不能进行任何操作。脚本段在客户端通过查看源代码是不可见的,单行注释的格式如下:,/,注释内容,2,多行注释,多行注释通过“,/*,”和“,*/,”符号进行标记,这两个标记必须成对出现,在它们之间输入的注释内容可以换行。多行注释格式如下:,/*注释内容1,注释内容2,注释内容3,*/,返回,3.3,JSP,脚本元素,3.3.1,声明语句,3.3.2,脚本段,3.3.3,JSP,表达式,JSP,中脚本元素包括,3,部分:声明语句、脚本段及,JSP,表达式,在,JSP,页面中需要通过特殊的约定来表示这些元素,并且对于客户端这些元素是不可见的,它们都是由服务器执行。,返回,声明语句,声明语句(,Declaration,),在,JSP,页面中定义方法和变量,其声明格式如下:,在页面中通过声明元素声明的方法和变量,在整个页面内都有效,它们将称为,JSP,页面被转换为类文件后中的方法和属性,并且他们会被多个线程即多个用户共享。也就是说,其中的任何一个线程对声明的变量或方法的修改都会改变它们原来的状态。它们的生命周期从创建到服务器关闭后结束。,注意:在“%”与“!”之间不要空格。声明的语法与在,Java,语言中,声明变量和方法是一样的。,返回,脚本段,脚本段(,Scriptlets,),就是,JSP,代码片段或脚本片段,嵌在“,”标记中。在脚本段中可以定义变量、调用的方法和进行各种表达式运算,且每行语句后面加入分号。这种,Java,代码在,Web,服务器响应请求时会运行。脚本段使用格式如下:,说明:脚本程序的使用比较灵活,实现的功能是,JSP,表达式无法实现的。,返回,JSP,表达式,JSP,表达式用来把,Java,数据向页面直接输出信息,其使用格式如下:,JSP,表达式与,JSP,页面中嵌入到脚本段中的,out.print(),方法实现的功能相同。如果表达式输出的是一个对象,则该对象的,toString,(),方法被调用,表达式将输出,toString,(),方法返回的内容。,例如:,运行结果:,返回,3.4,JSP,指令元素,3.4.1,页面指令元素:,page,3.4.2,包含指令元素:,include,3.4.3,提供动作指令元素:,taglib,JSP,指令元素主要包括,3,种:,Page,指令、,Include,指令及,taglib,指令。以“,”标记开始,以“,%,”标记结束。,返回,页面指令元素:,page(1),page,指令即页面指令,用于定义,JSP,文件中有效的属性。该指令可以放在,JSP,页面中的任意位置。,Page,指令包含多种属性,通过设置这些属性可以影响到当前的,JSP,页面。,Page,指令中除,import,属性外,其他属性只能在指令中出现一次。,Page,指令语法格式如下:,页面指令元素:,page(2),page,指令,各属性所具有的功能如,下:,language,:,设置当前页面中编写,JSP,脚本使用的语言。,import,:,用于向,JSP,文件中导入需要用户的类包。在,Page,指令中可多次使用该属性来,导入多个包,。,contentType,:,设置响应结果的,MIME,类型。默认,MIME,类型是,text/html,,,默认字符编码,为,ISO-8859-1,。,当多次使用,Page,指令时,该属性只有第一次使用有效,。,session,:,说明当前页面是否支持,session ,,默认值为,ture,,,表示支持,session 。,buffer,:,设置,out,对象使用的缓冲区的大小。如设置为,none,,,说明不使用缓存,而直接,通过,out,对象进行输出;如果将该属性指定为数值,则输出缓冲区的大小不,应小于该值。默认值为,8,KB 。,autoFlush,:,设置输出流的缓冲区是否自动清除。默认设置值为,true,,,说明当缓冲区已满,时,自动将其中的内容输出到客户端。如果设置为,false,,,则当缓冲区中的,内容超出其设置的大小时,会产生“,JSP Buffer overflow,”,溢出异常,。,isThreadSafe,:,默认值为,true,,,说明当前,JSP,页被转换为,Servlet,后,会以多线程的方式来,处理来自多个用户的请求;如果设置为,false,,,则转换后的,Servlet,会实现,SigleThreadModel,接口,该,Servlet,将以单线程的方式来处理用户请求,即,其他请求必须等待直到前一个请求被处理结束。,页面指令元素:,page(3),page,指令,各属性所具有的功能(续),:,info,:,设置为任意字符串,如当前页面的作者或其他相关的页面信息。可以通过,Servlet,.,getServletInfo,(),方法来获取设置的字符串,。,errorPage,:,指定一个当前页面出现异常时所要调用的页面。如果属性值是以“,/,”开头的,路径,则将在当前,Web,应用的根目录下查找文件;否则,将当前页面的目,录下查找文件,。,isErrorPage,:,设置为,true,,,说明在当前页面中可以使用,excpetion,异常对象。若在其他页面,中通过,errorPage,属性指定了该页面,则当调用页面出现异常时候,会跳转,到该页面,并且在该页面中可以通过,exception,对象输出错误信息。相反,,如果将该属性设置为,false,,,则在当前页面中不能使用,execption,对象。该属,性默认值为,false 。,isELlgnored,:,可以使,JSP,容器忽略表达式语言“,$,”。其值只能是,ture,或,false,。,设置为,true,则忽略表达式语言;设置为,false,,,则不忽略表达式语言,。,extends,:,设置当前,JSP,页产生的,Servlet,是继承哪个父类。在,JSP,中通常不会设置该,属性,,JSP,容器会提供转换后的,Servlet,继承的父类。并且如果设置该属性,,一些改动会影响,JSP,的编译能力,。,pageEncoding,:,用来设置,JSP,页字符的编码,默认值是“,ISO-8859-1,”,。,返回,包含指令元素:,include,include,指令用于在当前的,JSP,页面中在当前使用该指令的位置嵌入其他的文件,如果被包含文件有可以执行的代码,则显示代码执行结果。,include,指令的语法格式如下:,include,指令只存在,file,属性,表示此,file,的路径,路径名指的是相对路径,不需要指定端口、协议或域名等。该属性不支持任何表达式,也不允许传递任何参数。,注意:如果该属性值以“/”开头,那么指定的是一个绝对路径,将在当前,应用的根目录下查找文件,如果是以文件名称或文件夹名开头,,那么指定的相对路径将在当前页面的目录上查找文件。,返回,提供动作指令元素:,taglib,taglib,指令可以在页面中使用这些基本标记或自定义的标记来完成特殊的功能,在,JSP,页面中启动客户端定制行为。,taglib,指令语法格式如下:,taglib,元素具有两个属性:,uri,:该属性指定了,JSP,要在,web.xml,文件中查找的标签库描述符,该,描述符是一个标签描述文件(,*.,tld,),的映射。在该标签描述文,件中定义了该标签库中各个标签名称,并为每个标签指定一个,标签处理类。,prefix,:该属性指定了标签的前缀,此前缀不能使用已被,sun,公司声,明保留字。前缀名不能为,jsp,、,jspx,、,java,、,javax,、,servlet,、,sun,、,和,sunw,。,例如:,返回,3.5,JSP,动作元素,3.5.1,包含文件:,3.5.2,请求转发:,3.5.3,声明使用,JavaBean,:,3.5.4,设置,JavaBean,属性值:,3.5.5,获取,JavaBean,属性值:,3.5.6,声明使用,Java,插件:,与,3.5.7,参数传递:,与,3.5.8,其他动作元素,返回,包含文件:, (1),该元素允许包含动态或静态文件,如果包含的文件是静态的,它仅仅是把包含文件的内容加到,JSP,文件中去。包含静态文件的使用格式如下:,如果包含的文件是动态的。这个被包含文件也会被,JSP,编译器执行,并且在编译时可以传递参数。包含动态文件使用格式如下:,包含文件:, (2),属性及子元素,page,属性:该属性指定了被包含文件的路径,其值可以是相,对路径的表达式。当路径是以“,/,”开头时,则按,照当前应用的路径查找该文件;如果路径是以文,件名或目录名称开头,那么,将按照当前的路径,查找被包含的文件。,flush,属性:该属性标识当输出缓冲区满时,是否清空缓冲区,该属性默认值为,false,,,通常情况下设置为,true,。,子元素:该子元素可以向被包含的动作页面中,传递参数。,包含文件:, (3),与,include,指令的区别,(,1,),是直接包含源代码,,包含请求的,HTML,代码,并且支持,JSP,表达式和,Struts,应用中的请求模式。,(,2,)通过,包含一个,JSP,页面,在包含的页面中相关的,response,操作都被忽略,也就是说当前操作不能通过,response,对象,重定向到其他页面。如果用,包含的,JSP,页面,在该,页面中所有的,response,操作都会正常运行。,(,3,),元素请求代码时,可以带参数,而,就不,可以带参数。,(,4,)从执行速度角度上讲,,比,请求速度快,,因为,仅处理一个请求,而,处理两个请,求。,(5)从实际应用角度上讲,,用于检测用户是否登录、网,站标识或网站的一些静态不变的信息;而,用于发送,一个请求,并接收返回的,HTML,,并可以加入参数。,返回,请求转发:,该元素用于将客户端请求从一个页面转发到另一个,JSP,页面、,HTML,或相关的资源文件中。当该元素被执行后,当前页面将不再被执行,而是去执行该元素指定的目标页面。,使用格式如下:,如果转发目标是一个动态文件,还可以向该文件中传递多个参数,具体使用格式如下:,参数及元素说明:,page,属性:该属性指定了目标文件的路径。,元素:该元素用来向动态的目标文件中传递参数。,返回,声明使用,JavaBean,:, (1),该元素可以在,JSP,页面中创建一个,JavaBean,实例,并且通过属性的设置可以将该实例存储到,JSP,中的指定范围内。,使用格式如下:,其他元素设置,如,声明使用,JavaBean,:, (2),属性说明,id,属性:该属性指定一个变量,在所定义的范围内或,Scriptlet,中将使用该变量来对所创建的,JavaBean,实例进行引用。该变量必须符合,Java,中变量的命名规则。,scope,属性:该属性指定了所创建,JavaBean,实例的存取范围,默认属性值是“,page”。scope,属性具有的可选值见下表:,属性名称,获取方式,描述,page,无,指定创建的,JavaBean,实例只能够在当前的,JSP,文件中使用,包括通过,include,静态指令包含的页面中有效,request,request,对象的,getAttribute,方法获取,指定创建的,JavBean,实例可以在请求范围内进行存取,session,session,对象的,getAttribute,方法获取,指定创建的,JavBean,实例可以在,session,范围内进行存取,application,application,对象的,getAttribute,方法获取,指定创建的,JavBean,实例可以在,application,范围内进行存取,声明使用,JavaBean,:, (3),属性说明(续),class,属性:该属性指定了一个完整的类名,指定的类名不能是抽象的,它必须具有公共的、没有参数的构造方法。在没有设置,type,属性时,必须设置,class,属性。,type,属性:该属性用于设置由,id,属性指定的变量类型,可以指定要创建实例的类本身、类的父类或是一个接口。,beanName,属性:该属性可以是类文件、,JavaBean,实例或包含,JavaBean,的串行化文件(.,ser,文件)。当,JavaBean,不存在与指定范围内时,才可以使用此属性。它必须使用类型属性来指定要将何种类型的,Bean,实例化。,beanName,属性不能,class,属性一起使用,并且区分大小写。,声明使用,JavaBean,:, (4),元素的使用:,(,1,)不存在,Body,的格式如下:,(,2,)存在,Body,的格式如下:,返回,设置,JavaBean,属性值:,(1),该元素通常情况下与,元素一起使用,它调用,JavaBean,中的,setXXX,(),方法,将请求中的参数赋值给由,元素创建的,JavaBean,中对象的简单属性或索引属性。该属性的使用格式如下:,元素的属性,name,:该属性用来指定一个存在,JSP,中某个范围中的,JavaBean,实例。,设置,JavaBean,属性值:,(2),元素的属性,property=“*”,:,该属性说明,request,请求中的所有参数值将被一一,赋给,JavaBean,中与参数具有相同名字的属性。,property=“,属性名称”:该属性取值为,JavaBean,中的属性时,则只,会将,request,请求中与该,JavaBean,属性同名的一个,参数的致赋给这个,JavaBean,属性。,property=“,属性名称,”,param,=“,参数名称,”,:,param,属性指定一个,request,请求中的参数,,property,属性指定,JavaBean,中的某个属性。该方法允许将请求中的参数赋值,给,JavaBean,中与该参数不同名的属性。,property=“,属性名”,value=“,值”:,value,属性指定的值可以是字符串,数值或标识一个具体指的,JSP,表达式或,EL,表达式。,该值将被赋值给,property,属性指定的,JavaBean,属性。,返回,获取,JavaBean,属性值:,该属性用来从指定的,JavaBean,中读取指定的属性值,并输出到页面中。该,JavaBean,必须具有,getXXX,(),方法。,元素的使用格式如下:,返回,元素的属性,name,属性:该属性用来指定一个存在某个,JSP,范围中的,JavaBean,实例。,property,属性:该属性指定了要获取由,name,属性指定的,JavaBean,中的哪个属性值。,声明使用,Java,插件:,与,(1),元素可以在页面中插入,Java Applet,小程序或,JavaBean,,,它们能够在客户端运行,该元素会根据客户端浏览器的版本转换成,或,HTML,元素。当转换失败时,,元素用来显示用户的提示信息。因此,,与,通常情况下一起使用,使用格式如下:, , , , text message for user ,声明使用,Java,插件:,与,(2),其中各参数意义如下:,属性与参数名称,含义,type,指定了所要加载插件对象的类型,可选值为“,bean”,和“,applet”,code,codebase,用来指定,code,属性指定的,Java,类文件所在的路径。默认值为当前访问的,JSP,页面路径,name,指定了加载的,Applet,或,JavaBean,的名称,archive,指定预先加载的存档文件的路径,多个路径可用逗号进行分隔,align,主要是加载的插件对象在页面中显示时的对齐方式。可选值为,bottom、top、middle、left,和,right,height,加载的插件对象在页面中显示时的高度,单位为像素。支持,JSP,表达式或,EL,表达式,width,加载的插件对象在页面中显示时的宽度,单位为像素。支持,JSP,表达式或,EL,表达式,hspace,加载的,Applet,或,JavaBean,在屏幕或单元格中所留出的左右空间大小,不支持任何表达式,vspace,加载的,Applet,或,JavaBean,在屏幕或单元格中所留出的上下空间大小,不支持任何表达式,jerversion,在浏览器中执行,Applet,和,JavaBean,时所需的,Java,运行环境的版本,默认是1.1,nspluginurl,指定了,Netscape,浏览器用户能够使用的,JRE,的下载地址,iepluginurl,指定了浏览器,Internet,浏览器用户能够使用的,JRE,的下载地址,在该元素中可以包含多个,元素,用来向,Applet,或,JavaBean,中传递参数,当加载,Java,类文件失败时,用来显示给用户的提示信息,指定了要加载的,Java,类文件的名称。该名称可以包含扩展名和类包名,返回,参数传递:,与,(1),通过,元素可以传递一个参数,使用格式如下:,通过,元素可以传递多个参数,使用格式如下:,传递多个参数,也可以通过,元素,例如:,参数传递:,与,(2),元素与,元素的参数,name,属性:表示参数名称。,value,属性:表示参数值。,说明:,元素经常与其他元素一起使用的。例如,、,等元素一起使用;,元素只能与,元素一起使用。,返回,其他动作元素,JSP,还存在其他的动作元素,它们都是不常用的动作元素。见下表:,名称,含义,用于定义其他动作元素中任意属性值,用于为一个动作元素定义动作体,该元素只能与,元素一起使用,用于动态创建一个,XML,元素,并将其添加到响应信息,此元素主要用于,JSP,文档中,用于输出,XML,声明和文档类型声明,返回,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!