资源预览内容
第1页 / 共52页
第2页 / 共52页
第3页 / 共52页
第4页 / 共52页
第5页 / 共52页
第6页 / 共52页
第7页 / 共52页
第8页 / 共52页
第9页 / 共52页
第10页 / 共52页
亲,该文档总共52页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第2章 JSP语法教学目标:了解和掌握HTML语法掌握JSP页面基本结构、变量和方法的声明 掌握Java程序片、Java表达式、JSP中的注释掌握JSP指令、JSP动作(Action)标记教学重点:JSP页面基本结构变量、方法的声明 Java程序片、Java表达式、JSP中的注释JSP指令 和JSP动作(Action)标记2.1. JSP页面的基本结构页面的基本结构JSP页面可由页面可由5种元素组合而成:种元素组合而成: 普通的普通的HTML标记符;标记符; JSP标记,如指令标记、动作标记;标记,如指令标记、动作标记;% % 成员变量和方法的声明;成员变量和方法的声明; Java程序片;程序片; Java表达式。表达式。 l例子例子1:example2_1.jsplhttp:/127.0.0.1:8080/lizi/ch2/example2_1.jspl JSPJSP页面的运行原理页面的运行原理: : (查看(查看workwork目录)目录)*.jsp *.java *.class采用线程机制l字节码文件的任务:字节码文件的任务:1.把JSP页面中普通的HTML标记符号,交给客户的浏览器执行显示。2.JSP标记、数据和方法声明、Java程序片由Tomcat服务器负责执行,将需要显示的结果发送给客户的浏览器。 3. Java表达式由Tomcat服务器负责计算,将结果转化为字符串,交给客户的浏览器负责显示。HTML基础知识课外阅读:HTML语法教学.htm关于HTML HTML以标签形式存在于网页当中 。表示网页开始的区块。与之间的文字会显示在浏览器的标题栏中。标签区块,代表网页文件主体。 例如:lizich2otherthePage.htm表格标 签定 义设定表格的开始与结束。 设定一个新列。 设定指定列里的一个新字段。 设定表格每行的字段抬头。 例子:lizich2other表格的边框厚度、高度与宽度 属性说明border改变表格边框厚度。 width改变表格的宽度。 height改变表格的高度。 表格位置设定绝对位置绝对位置表示法:表示法:使用像素来做为设定单位 ,不论窗口如何调整,占用固定的像素。 相对相对位置表示法位置表示法 :使用百分比做为设定单位 ,占用某一固定的比例大小 。表格数据的对齐方式 属 性可设定的属性值说 明alignleft、center、right靠左、置中、靠右对齐,默认为靠左对齐 valigntop、center、bottom向上、置中、向下对齐,默认为置中对齐 例如;lizich2otherusingtablealign.htm超链接超链接标签超链接标签 链接文字例如:lizich2otherusinghl.htm 超链接 target 属性属性值说 明_blank将连结内容显示在新窗口中。 _self将连接内容显示在原本的窗口中。 _top将连结内容显示在原本的窗口中,并取消框架的限制。 _parent将内容显示在上一层的框架中。 例如:lizich2otherblankusingblank.html标签链接图片文件链接图片文件 例如;lizich2otherusingpichl.html2.2 2.2 变量和方法的声明变量和方法的声明 1.1.在在JSP页面的标记符页面的标记符“”之之间声明的变量称作间声明的变量称作JSPJSP页面的成员变量页面的成员变量 。(全局变量)(全局变量)2. JSP页面在页面在“”之间声明变之间声明变量和方法量和方法 .2.2.1声明变量声明变量声明变量: varType varName ; Final关键词与常数声明: final varType varName= varValue ;P13 例子2: example2_2.jsp 您是第 个访问本站的客户。成员变量被所有用户共享。http:/127.0.0.1:8080/lizi/ch2/example2_2.jsp数据类型类型数据类型名称大小有效范围字符char字符16bitu0000uffff布尔boolean布尔值1bittrue或false浮点数float浮点数32bit1.40239846E-453.40282347E+38double倍精确浮点数64bit4.94065645841246544E-3241.79769313486231570E+308整数byte位整数8bit-128127short短整数16bit-3276832767int整数32bit-21474836482147483647long长整数64bit-922337203685475808922337203685475808数组 声明一個数组变量:数据类型 数组名称=new 数据类型数组大小; 语法2:数据类型 数组名称=內容值;声明二维数组:数据类型 数组名=new 数据类型列数行数 ;数据类型转换 数据类型转换语法:(dataType)varName2.2.2声明方法JSP页面在页面在“”之间声明方之间声明方法法方法内定义的变量方法内定义的变量只在该方法内有效。只在该方法内有效。方法在方法在javajava程序片中被调用程序片中被调用 例子3: example2_3.jsp % x=127; y=18; out.println(调用multi方法计算+x+与+y+之积:); double a=multi(x,y); out.println(a); x=a; out.println(调用div方法计算+x+除以+y+的商:); double b=div(x,y); out.println(b); %2.3 Java程序片程序片 在在“”之间插入之间插入Java程序片程序片 程序片中声明的变量称为程序片中声明的变量称为JSP页面的页面的局部变量局部变量 ,在在后继后继的所有的所有java程序片和程序片和java表达式中有表达式中有效。效。多个客户请求一个多个客户请求一个JSP页面时页面时 , Java程序片将程序片将被执行多次被执行多次,分别在不同的线程中执行,分别在不同的线程中执行,并,并为局部变量分配为局部变量分配不同的内存不同的内存。注意:成员变量被所有用户共享。注意:成员变量被所有用户共享。P15 图2.4 程序片的执行成员变量Java程序片局部变量客户线程1Java程序片局部变量客户线程1执行执行操作操作例子4: example2_4.jsp 一个java程序可以分割成几个java程序片,这些程序片之间可以插入其他标记元素。例子5: example2_5.jspJava流程控制语句If 判断式 if(condition ) 语语句句 ;if-else判断式 if(condition) 语语句句1 else语语句句2 if-else if-else 判断式 if(condition 1) 语语句句1 else if(condition2) 语语句句2 else 语语句句3 Switch判断式 switch(运算式运算式式式) case 1: 程序程序片段片段; break; case 2: 程序程序片段片段; break; default: 程序程序片段片段; break;http:/127.0.0.1:8080/lizi/ch2/other/usingswitch.jspFor循环for(初始值初始值;条件式条件式;表达式表达式) 程序代码程序代码; while 循环while(条件条件式式) 程序代程序代码码http:/127.0.0.1:8080/lizi/ch2/other/usingWhile.jspdo-while 循环 do 程序代码程序代码while(条件式条件式) http:/127.0.0.1:8080/lizi/ch2/other/usingDoWhile.jspBreak与continue指令 break指令指令用来强迫结束循环或离开判断式,在switch语句中,可以利用它结束一个case区块的运行,break经常被使用于循环中,进行循环的强迫中断操作 。continue指令指令continue指令会忽略其后的程序代码,提前退出本次循环,直接运行下一次的循环。 http:/127.0.0.1:8080/lizi/ch2/other/usingContinue.jsphttp:/127.0.0.1:8080/lizi/ch2/other/usingbreak.jsp2.4 Java2.4 Java表达式表达式 1.1.“%=”%”之间可以是一个之间可以是一个JavaJava表达式,要求表达式必须能求值。表达式,要求表达式必须能求值。2.2.表达式的值由服务器负责计算,并将表达式的值由服务器负责计算,并将计算结果用计算结果用字符串字符串形式发送到客户端形式发送到客户端显示。显示。3.例子例子6: example2_6.jsplhttp:/127.0.0.1:8080/lizi/ch2/example2_6.jsp2.5 JSP中的注释中的注释 1. HTML注释格式注释格式: 在在浏览器的源文件中能看到器的源文件中能看到HTML注释注释2. JSP注释格式注释格式: 编译JSPJSP页面面时忽略注忽略注释3. Java注释格式注释格式: / 注释内容注释内容 /* 注释内容注释内容 */l例子例子7: example2_7.jsp2.6. JSP JSP 指令标记指令标记 2.6.1 page 2.6.1 page 指令标记指令标记:l page 指令用来定义整个JSP页面的一些属性和这些属性的值,属性值用单引号或双引号括起来。l可以用一个page指令指定多个属性的值 ,也可以使用多个page指令分别为每个属性指定值。l page指令的作用对整个JSP页面有效,与其书写的位置无关,习惯把page指令写在JSP页面的最前面。例如: 或 page 指令标记可以指定如下属性的值:contentType、 import、 language、session、 buffer、 auotFlush 、isThreadSafe、 info l contentType属性属性 contentType 属性值确定JSP页面响应的MIME(Multipurpose Internet Mail Extention)类型和JSP页面字符的编码。例如: 不允许两次使用page 指令给contentType属性指定不同的属性值。contentType 属性值有:P20 例子8: example2_8.jspllanguagelanguage属性属性定义JSP页面使用的脚本语言,该属性的值目前只能取java。为language属性指定值的格式:l import mport 属性属性该属性的作用是为JSP页面引入Java运行环境提供的包中的类,这样就可以在JSP页面的程序片部分、变量及方法声明部分、表达式部分使用包中的类。例如:lsessionsession属性属性用于设置是否需要使用内置的session对象。session的属性值可以是true或false。session属性默认的属性值是true。lbufferbuffer属性属性内置输出流对象out负责将服务器的某些信息或运行结果发送到客户端显示,buffer属性用来指定out设置的缓冲区的大小或不使用缓冲区。例如:buffer属性的默认值是8kb。buffer属性可以取值 none,设置out不使用缓冲区。l autoFlushautoFlush 属性属性指定out的缓冲区被填满时,缓冲区是否自动刷新。默认值是ture。lisThreadSafeisThreadSafe 属性属性用来设置JSP页面是否可多线程访问。l infoinfo属性属性Info的值是一个字符串,是JSP页面常用的且可能需要经常修改的字符串。使用方法getServletInfo()读取info的字符串。2.6.2 include 2.6.2 include 指令标记指令标记 如果需要在JSP页面内某处整体嵌入一个文件,就可以考虑使用include指令标记,其语法格式如下:% include file= URL % 如果该文件和当前JSP页面在同一Web服务目录中,那么“文件的URL”就是文件的名字;如果该文件在JSP页面所在的Web服务目录的一个子目录中,比如fileDir子目录中,那么“文件的URL”就是“fileDir/文件的名字”。(相对目录) 静态插入,就是当前JSP页面和插入的文件合并成一个新的JSP页面,然后JSP引擎再将这个新的JSP页面转译成Java文件。被嵌入的文件和嵌入该文件的JSP页面中的page指令指定的contentType属性值必须相同。例子9: example2_9.jsp例子10: example2_10.jsp2.7.JSP 2.7.JSP 动作标记动作标记 include include 动作标记动作标记 或 param子标记 include 动作标记是在JSP页面运行时才处理文件,被处理的文件在逻辑和语法上独立于当前JSP页面。param动作标记动作标记 param标记以“名字值”对的形式为其它标记提供附加信息.param标记不能独立使用,需作为jsp:include、jsp:forward、jsp:plugin标记的子标记来使用。param动作标记语法格式: 当该标记与jsp:include动作标记一起使用时,可以将param标记中的值传递到include动作标记要加载的文件中去,被加载的JSP文件可以使用request内置对象获取include动作标记的param子标记中name属性所提供的值。 forward forward 动作标记动作标记该指令的作用是:从该指令处停止当前页面的继续执行,而转向执行page属性指定的JSP页面。 或 param子标记 例子11: example2_11.jsp example2_11_1.jspPluginPlugin动作标记动作标记该动作标记指示jsp页面加载Java plugin,该插件由客户负责下载,并使用该插件来运行Java applet程序。例子13: example2_13.jspuseBeanuseBean 动作标记动作标记 该标记用来创建并使用一个Javabean,是非常重要的一个动作标记,将在第4章详细讨论。Sun公司的倡导是:用HTML完成JSP页面的静态部分,用Javabean完成动态部分,实现真正意义上的静态和动态分离。 第2周星期三7、8节上机任务输入课本例2-12-7,调试运行,并阅读分析程序。上机题:P33 第5题(注意一定要在分析理解的基础上完成!)课后要求:课外自学HTML语法以及Dreamweaver(第四周请同学讲课)认真阅读理解第2章内容,标出不明白的问题,上课讨论。书面作业1.总结include指令标记和include动作标记的异同, include动作标记和forward动作标记的异同;并以例子说明。2. P33 第7题3、第5周星期一交静态网站制作作品,网站主页统一用index.html,至少包含5个网页。学号姓名 index.html
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号