Java-Web项目二-JSP基本语法课件_第1页
Java-Web项目二-JSP基本语法课件_第2页
Java-Web项目二-JSP基本语法课件_第3页
Java-Web项目二-JSP基本语法课件_第4页
Java-Web项目二-JSP基本语法课件_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、项目二 JSP基本语法 2.1 理解JSP页面的构成 2.2 掌握JSP的基本语法 2.3 拓展实训23 七月 202222.1 理解JSP页面的构成JSP页面遵循Java的语法规则,是超文本标记语言(HTML)与Java语言两者的融合。简言之,在静态页面中按照语法嵌入动态代码,就构成了JSP动态页面。一个完整的JSP页面构成如图所示。23 七月 202232.2 理解JSP页面的构成本任务要求熟练掌握JSP的基本语法,并能够运用脚本标记、指令标记、动作标记等JSP元素。1.2.1 JSP脚本标记1.2.2 JSP指令标记1.2.3 JSP动作标记23 七月 202242.2.1 JSP脚本标

2、记1.JSP脚本段语法JSP脚本段(Sciptlet)是指一个有效的程序段,在这个程序段中可以声明要用到的变量和方法、编写Java语句,以及使用任何隐含的对象等。JSP脚本段的基本语法为,例如:%int sum=0; for( int i=0; i=10; i+) sum+=I;out.println(“sum=”+sum+”);%2.2.1 JSP脚本标记 JSP脚本段中只能出现Java代码,不能出现其他模板元素。JSP脚本段中Java必须严格遵循Java语法。在一个JSP页面中可以有多个脚本段,在两个或多个脚本段间可以嵌入文本、HTML标记和其他JSP元素。多个脚本段中的代码可以相互访问,

3、单个脚本段中的Java语句可以是不完整的,但多个脚本段代码组合后的结果必须是完整的。提示:23 七月 202262.2.1 JSP脚本标记【例1】多个脚本段的相互访问。在项目中创建scriplet.jsp,代码如下:23 七月 202272.2.1 JSP脚本标记在该页面中for循环被拆分到两个脚本段,中间插入一段html语句,这两个脚本段相互访问,构成完整的循环,效果如图所示。23 七月 202282.2.1 JSP脚本标记2JSP声明语法在JSP页面中,可以声明合法的变量的和方法,变量类型可以是Java语言允许的任何数据类型。这种声明是全局变量。JSP声明(Declaration)的基本语

4、法为,声明的本质就是将声明的变量和方法作为Servlet类的变量和方法,下面我们用一个例子来解释如何声明变量和方法。【例2】声明变量和方法。 本例在declaration.jsp中声明一个整型变量和一个方法,并在后面的代码段中加以调用,代码如下:23 七月 202292.2.1 JSP脚本标记23 七月 2022102.2.1 JSP脚本标记declaration.jsp运行后的效果如图所示:每次刷新后,count变量都会自加1,效果如图所示:2.2.1 JSP脚本标记 声明必须以分号(;)结尾。可以直接使用在中已经声明的变量和方法,不需要对它们重新进行声明。一个声明仅在一个页面中生效。如果要

5、在多个页面中用到,则可将它们写成一个单独的文件,然后用和包含进来。提示:23 七月 2022122.2.1 JSP脚本标记3JSP表达式语法在JSP页面中,可以用表达式(Expression)将程序数据输出到客户端,其等价于“out.print”。表达式元素表示的是一个在脚本语言中被定义的表达式,在运行后被自动转换为字符串,然后插入到这个表达式在JSP页面中的位置并显示。JSP表达式的基本语法为,表达式的本质就是在将JSP页面转化为Servlet后,使用out.print()将表达式的值输出,下面我们用一个例子来理解表达式的妙用。23 七月 2022132.2.1 JSP脚本标记【例3】表达式

6、实例 本例在expression.jsp中定义了字符串变量url,并利用表达式指定了超级链接的页面以及处理表单信息的页面,代码如下:23 七月 2022142.2.1 JSP脚本标记 创建expressionHref.jsp,代码如下:页面expression.jsp的运行效果如图所示:23 七月 2022152.2.1 JSP脚本标记 点击超级链接“点击跳转”或单击按钮“点击跳转”,都会定向到expressionHref.jsp,如图所示。提示: 声明必须以分号(;)结尾。23 七月 2022162.2.1 JSP脚本标记4JSP注释语法在JSP页面中,注释分为两大类:静态注释和动态注释。静

7、态注释是直接使用HTML风格的注释,这类注释在浏览器中查看源文件时是可以看到注释内容的;动态注释包括Java注释和JSP注释两种,这类注释在浏览器中查看源文件时是看不到注释内容的。注释的语法为:静态注释:Java注释:/单行注释/* 多行注释*/JSP注释:23 七月 2022172.2.2 JSP指令标记JSP指令标记(Directive Elements)为JSP引擎设计的,该类标记并不直接产生任何可见的输出,而是告诉JSP引擎如何处理JSP页面的其余部分。例如:可以指定一个专门的错误处理网页,当JSP页面出现错误时,可以由JSP引擎自动地调用错误处理网页。常用的JSP指令标记包括:pag

8、e页面指令,include静态指令,还有taglib指令。23 七月 2022182.2.2 JSP指令标记1page页指令标记 Page指令用于定义域整个JSP页面相关的各种属性。其基本语法为: page指令常用的的属性和默认值如表所示。23 七月 2022192.2.2 JSP指令标记例如:在某个JSP页面中,如果需要导入Java的sql包,并设置错误处理页面,则:提示:无论page指令出现在JSP页面中的什么地方,它作用的都是整个JSP页面(包括静态的包含文件,但不能作用于动态的包含文件),为了保持程序的可读性和遵循良好的变成习惯,page指令最好是放在整个JSP页面的起始位置。在一个J

9、SP页面中可以使用多个指令,但其中的属性只能用一次,不过import属性例外,它可以多次出现,引入多个类和包,这和Java中的import语句差不多。23 七月 2022202.2.2 JSP指令标记1include静态包含指令标记 include指令用于引入其他JSP页面,引入后,JSP引擎会将这两个JSP页面翻译成一个servlet。因此include指令通常也别称为静态引入。其基本语法为: 所谓静态,是指file属性的值不能是一个变量,也不可以在file所指定的文件后添加任何参数。23 七月 2022212.2.2 JSP指令标记【例4】include指令标记使用实例 用include指

10、令引入相同文件夹下的head.jsp页面,代码如下:23 七月 2022222.2.2 JSP指令标记创建head.jsp,代码如下:运行include.jsp的效果如图所示。2.2.2 JSP指令标记 被引入的文件必须遵循JSP语法。被引入的文件可以使用任意的扩展名,但都会被JSP引擎按照JSP页面的处理方式去处理,为了见名知意,建议使用“.jspf”(JSP fragment,即JSP片段)作为静态引入文件的扩展名。被引入的文件中不要包含、等标记,因为这样会影响引入文件中同样的标记。引入和被引入文件中的指令不能冲突(page指令中的pageEncoding和import属性除外)。提示:2

11、3 七月 2022242.2.3 JSP动作标记与指令标记不同,JSP动作标记(Action Element)是在客户端请求时动态执行的。 JSP动作标记是一种特殊标签,并且以前缀jsp和其他的HTML标签相区别,利用JSP动作标记可以实现很多功能,包括动态地插入文件、重用JavaBean组件、把用户重定向到另外的页面、为Java插件生成HTML代码等。 23 七月 2022252.2.3 JSP动作标记1动作标记可以用来包含其他静态或动态文件。其基本语法为:不带参数带参数jsp:param 其中,属性page指向的是被包含文件的相对路径;当属性flush为true时,表示实时输出缓冲区,它的

12、默认值是false。子句能传递一个或多个参数给动态文件,也可以在一个页面中使用多个来传递多个参数给动态文件。23 七月 2022262.2.3 JSP动作标记【例5】带参数的inlcude动作标记 本例在incluldeJsp.jsp中,通过动作标记引入date.jsp,并利用向被引入的页面传递参数,此处要通过request内置对象的setCharacterEncoding(“编码格式”)来设定编码格式,以避免传递中文时乱码。includeJsp.jsp的代码如下:23 七月 2022272.2.3 JSP动作标记创建date.jsp,代码如下:23 七月 2022282.2.3 JSP动作标

13、记运行includeJsp.jsp的效果如图所示。提示:被引入的文件必须遵循JSP语法。被引入的文件可以使用任意的扩展名,但都会被JSP引擎按照JSP页面的处理方式去处理,为了见名知意,建议使用“.jspf”(JSP fragment,即JSP片段)作为静态引入文件的扩展名。23 七月 2022292.2.3 JSP动作标记2动作标记用于在服务器端终止当前页面的运行,并重定向到其他指定页面。重定向的目标可以是静态的HTML页面、JSP页面,或者是一个程序段。其基本语法为:不带参数带参数 jsp:param其中,属性page指向的是重定向的页面路径。23 七月 2022302.2.3 JSP动作

14、标记【例6】带参数的forward动作标记 本例在forward.jsp中,通过动作标签将页面重定向到forwardTo.jsp,并利用传递参数。在forwardTo.jsp中,利用request内置对象中的getParameter(“变量名”)来接受传递过来的参数。创建forward.jsp,代码如下:23 七月 2022312.2.3 JSP动作标记创建forwardTo.jsp,代码如下:forward.jsp的运行效果如图2-9所示。23 七月 2022322.2.3 JSP动作标记提示:forward.jsp执行到标记出现处时停止当前页面的执行,并重定向到新的页面,也就是说,forw

15、ard.jsp中标记后的部分不执行,如图2-9所示,并没有输出表达式。动作标记执行的是服务器端的跳转,浏览器地址不变,如图2-9标红方框所示,地址仍为/forward.jsp。23 七月 2022332.2.3 JSP动作标记3动作标记用来传递参数给JSP页面。其基本语法为:jsp:param name=”参数名” value=”参数值|”/ 其中,属性name表示传递的参数名称,并属性value设置属性的值。提示:JSP标记不同于HTML标记,属性值必须加上双引号,否则执行时会报错。使用动作标记用来传递参数,在JSP页面中通过request.getParameter(“属性名”)来获取参数的

16、值。动作标记必须配合、或等标记使用,在加载外部程序或是网页转换的时候,传递参数给另一个JSP页面,单独使用没有意义。23 七月 2022342.2.3 JSP动作标记4动作标记用于在JSP网页中加载Java Applet或JavaBean程序组件,与HTML的与标签有着类似的功能。这个元素有许多属性设置,如表所示。23 七月 2022352.2.3 JSP动作标记5、和动作标记5.1 动作标记动作标记用来加载JSP页面中使用的JavaBean,其语法格式如下:其中,id指定该JavaBean实例变量的名称,scope指定该Bean变量的有效范围:page指只在当前JSP页面有效;request

17、指在任何执行相同请求的JSP页面中使用该Bean,直到页面执行完毕;session指从创建该Bean开始,在相同session下的JSP页面中可以使用该Bean;application指从创建该Bean开始,在相同application下的JSP页面可以使用该Bean。例如:23 七月 2022362.2.3 JSP动作标记5、和动作标记5.2 动作标记动作标记用于设置已经实例化的Bean对象的属性,其基本语法格式为:jsp:setPropety name=”JavaBean实例名称” property=”*”| property=”属性名” param=”参数”| property=”属性名

18、” value=”String|”/提示:中name值必须和中的id值相同,且大小写敏感23 七月 2022372.2.3 JSP动作标记5、和动作标记5.3 动作标记动作标记可获取Bean的属性值,用于在页面中显示。其基本语法格式为:23 七月 2022382.3 拓展实训任务要求完成一个主题网站,进一步掌握JSP的基本语法。任务描述2.3.1 主题网站的运行效果当我们在浏览主题网站时,经常会发现,这些网站的不同频道都是用相同的Logo和频道导航做题头。本任务就是要完成一个主题网站,如下面3张图所示。如果在每个页面的题头部分都放置网站的Logo频道导航,则会导致的问题是,当网站Logo或频道

19、需要更换时,就需要对每一个频道的网页重新设计,这样的维护既费时又费力。因此,为了便于实现快速维护,我们将两个相对独立的网页拼接成第一张图所示的页面,更改Logo图时,我们只需要对top.html进行调整即可。23 七月 2022392.3.1 拓展实训23 七月 2022402.3.1 拓展实训23 七月 2022412.3.1 拓展实训23 七月 2022422.3.2 功能设计1. 创建工程启动IntelliJ IDEA,创建web应用chapter2,在web文件夹下创建images文件夹,并将top.jpg导入到images文件夹中。在web文件夹下创建JSP类型文件welcome.j

20、sp、index.jsp、feature.jsp、contact.jsp和HTML类型文件top.html、welcome.html、feature.html、contact.html。2. 将已有资源添加到当前工程展开chapter2工程,可以看到chapter2工程下的web子文件。选中web子文件夹,单击鼠标右键,在弹出的快捷菜单中选择NewDirectory命令,创建images文件夹,将制作好的图片文件top.jpg复制到该文件夹。3. HTML页面设计首先创建top.html、welcome.html、feature.html和contact.html页面,如下3张图所示。23 七月 2022432.3.2 拓展实训23 七月 2022442.3.2 拓展实训23 七月 2022452.3.2 拓展实训23 七月 2022462.3.2 拓展实训top.html代码如下:23 七月 2022472.3.2 拓展实训welcome.html代码如下:23 七月 2022482.3.2 拓展实训feature.html代码如下:23 七月 2022492.3.2 拓展实训contact.html代码如下:23 七月 2022502.3.2 拓展实训4. JSP页面功能设计(1)welcome.jsp功能设计在chapter2工程中,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论