Java-Web-程序设计模块2_第1页
Java-Web-程序设计模块2_第2页
Java-Web-程序设计模块2_第3页
Java-Web-程序设计模块2_第4页
Java-Web-程序设计模块2_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

模块2制作简单的javaWeb网站JavaWeb程序设计“十三五”职业教育国家规划教材配套资源目录项目4制作又包含文件的JSP页面项目5制作简单的展示网站小结习题项目4制作又包含文件的JSP页面4.1项目描述与实现(1)描述实现静态包含功能,编写三个不同类型的文件,然后将这三个不同类型的文件静态包含于某一JSP文件中,运行效果如下图所示。4.1项目描述与实现(2)实现过程

(1)编写三个不同类型的被包含文件,分别是exam4_1_inclu.html、

exam4_1_inclu.jsp和exam4_1_inclu.txt。代码见程序2-1~程序2~3。程序2-1:exam4_1_inclu.html<h2> Includeexam4_1_inclu.html</h2>程序2-2:exam4_1_inclu.jsp<%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><h2> <%=”exam4_1_inclu.jsp被包含了!”%> </h2>程序2-3:exam4_1_include.txt<h2>Includeexam4_1_inclu.txt</h2>项目4制作又包含文件的JSP页面项目4制作又包含文件的JSP页面4.1项目描述与实现(2)实现过程

(2)编写JSP包含文件,包含上述三个文件。代码见程序2-4。程序2-4:exam4_1_include.jsp<%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><html><head><title>包含文件演示</title></head><body> <h1>包含文件操作:</h1> <%@includefile=”exam4_1_inclu.html”%> <%@includefile=”exam4_1_inclu.jsp”%> <%@includefile=”exam4_1_inclu.txt”%></body></html>代码分析:使用<%@include%>包含了之前定义的三种类型的文件,分别是html、jsp和txt文件。被包含的文件内容会在此页面中输出其内容。<%@include%>为JSP页面包含指令。项目4制作又包含文件的JSP页面4.2新知识点-JSP指令:page指令、include指令JSP指令是为JSP引擎而设计的。它们并不直接产生任何可见的输出,而只是告诉引擎如何处理其余的JSP页面。JSP指令有三种,分别为页面设置指令page、页面包含指令include和标记指令taglib。JSP指令一般语法形式为:<%@指令名称属性=“值”%>1、page指令:page指令就是通过设置内部的多个属性来定义JSP文件中的全局特性。需要注意的是,page指令只能对当前自身页面进行设置,即每个页面都有自身的page指令。如果没有对属性进行设置,JSP将使用默认指令属性值(Page指令的常用属性表,可查看教材的P26页)。项目4制作又包含文件的JSP页面程序2-5

:exam4_2_page1.jsp程序2-5:exam4_2_page1.jsp<%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><H2>测试contentType!</H2>代码分析:本例中,设置了<%@page>指令的language属性,指定了开发语言为Java;contentType属性,指定MIME类型为text/html,页面的字符编码集charset为UTF-8;pageEncoding属性,指定页面的字符编码为UTF-8。显示效果如图2-2所示。图2-2项目4制作又包含文件的JSP页面程序2-6

:exam4_3_page2.jsp程序2-6:exam4_3_page2.jsp<%@pagelanguage=”java”contentType=”application/msword;charset=UTF-8”pageEncoding=”UTF-8”%><H2>测试contentType!</H2>代码分析:使用<%@page>中的contentType=”application/msword”设置本页面的MIME类型为Word,以Word文件进行显示,运行效果见图2-3所示。图2-3项目4制作又包含文件的JSP页面2、include指令:在JSP开发中,可以将一些重用的代码写入一个单独的文件中,然后通过include指令引用该文件,从而缓解代码的冗余问题,修改也比较方便。include指令语法格式为:<%@includefile=”被包含的文件路径”%>inlcude也被称为静态包含指令,包含的文件可以是JSP文件、HTML文件、文本文件和Java程序段。静态包含指令只是简单的将内容合在一起显示,所以,在一个完整的页面中,对于<html>、<head>、<title>、<body>等元素只能出现一次,如果重复出现,则会造成HTML错误。在项目4任务中,其主要采用include指令完成不同类型文件的包含。项目4制作又包含文件的JSP页面3、扩展——taglib指令:使用<%@taglib%>指令在JSP文件中导入标签,以便在JSP中使用标签方便地完成一些动作。taglib指令的语法为:<%@tagliburi=”tagLibraryURI”prefix=”tagPrefix”%>uri是一个URI标识标记库描述器。一个标记库描述器用来唯一的命名一组定制的标记,并且告诉包容器如何处理特殊的标记。prefix定义一个prefix:tagname形式的字符串前缀,用于定义定制的标记。项目5制作简单的展示网站5.1项目描述与实现(1)描述制作一个简单的JSP网站。网站主题为酒店网站,主要包括网站首页、客房预订和会议活动等页面,效果如图2-4~2-5所示。要求公共部分采用单独文件,并被包含。开发过程采用Eclipse和Dreamweaver搭配开发,设计显示界面部分全部用Dreamweaver实现,JSP程序部分在Eclipse中编写,最后在Eclipse中测试运行。图2-4酒店网站首页图2-5酒店订房页面项目5制作简单的展示网站5.1项目描述与实现(2)实现过程:从任务需求可以分析出,此网站各页面Top部分相同,Bottom部分也相同,因此在页面制作时可将公共部分单独创建,作为一个文件包含。实现过程为从设计图首先实现出HTML页面,然后将公共部分单独提取,放入创建的新的文件中,以作为包含文件包含。1.制作首页显示效果。用Dreamweaver所见所得方式,从设计图直接实现出exam5_index.html页面。实现后,其代码如程序2-7所示。项目5制作简单的展示网站5.1项目描述与实现(2)实现过程:程序2-7

:exam5__index.html程序2-7:exam5_index.html/*详细代码在实验指导书*/<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><title>首页--海南四季春天酒店</title>

……

省略 <divid="bottom_right"> <a>四季春天酒店管理有限公司版权所有

琼ICP备78931000号</a></div></div><!--bottom部分结束--></div></body></html>代码分析:该代码为首页的HTML界面,中间省略当前显示主题部分,完整代码参见源码。项目5制作简单的展示网站5.1项目描述与实现(2)实现过程:2.提取公共部分,创建exam5_top.jsp文件,exam5_bottom文件通过分析,提取<!—top导航部分到<!—top导航部分结束的HTML内容,创建导航的公共部分,即如程序2-8所示。提取<!—bottom部分到<!—bottom部分结束的HTML内容,创建版权信息文件,如程序2-9所示。程序2-8:exam5_top.jsp<%@pagelanguage="java"contentType="text/html;charset=UTF-8“pageEncoding="UTF-8"%><divclass="top"> <divclass="top_right"><divclass="top_right_top"><divclass="top_right_time">当地时间:<scripttype="text/javascript"src="js/time.js"charset="UTF-8"></script></div><divclass="topnav"><ahref="#">关于四季春天</a>  <ahref="#">到达指引</a>  <ahref="#">English</a></div></div>……<divclass="clear"></div></div></div>项目5制作简单的展示网站5.1项目描述与实现(2)实现过程:为了显示代码简洁,将首页主体部分单独创建一个文件exam5_index_list.jsp,从exam5_index.html中提取<!—top导航部分结束到<!—bottom部分标签之间的HTML内容,因为程序简单,此处不再列出。程序2-9:exam5_bottom.jsp<%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><divid="bottom"> <divid="bottom_left"> <ahref="#">隐私政策</a> | <ahref="#">细则及条款</a> | <ahref="#">安全与防护</a> | <ahref="#">网站地图</a></div> <divid="bottom_right"> <a>四季春天酒店管理有限公司版权所有

琼ICP备78931000号</a></div></div>

程序2-9

:exam5__bottom.jsp项目5制作简单的展示网站5.1项目描述与实现(2)实现过程:将exam5_index.html中被提取的部分删除后剩余的部分COPY进exam5_index.jsp,并在被提出文件出用包含动作指令包含提取出的文件,详细代码见程序2-10所示。程序2-10:exam5_index.jsp<%@pagelanguage="java"contentType="text/html;charset=UTF-8“pageEncoding="UTF-8"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><title>首页--海南四季春天酒店</title>

……

省略<jsp:includepage="exam5_index_list.jsp"></jsp:include><jsp:includepage="exam5_bottom.jsp"></jsp:include></div></body></html>

程序2-10:exam5__index.jsp代码分析:程序中,采用JSP动作指令<jsp:include>包含了文件exam5_top.jsp,exam5_index_list.jsp和exam5_bottom.jsp。项目5制作简单的展示网站5.2新知识点-JSP动作指令、<jsp:include>在JSP中,还存在另外一类标记,其符合XML的语法格式。利用这些标记可以达到控制

Servlet引擎的作用,如动态的插入文件,调用JavaBean,页面重定向等,这类标记称为JSP动作标记。JSP的常用动作标记有<jsp:include>、<jsp:useBean>、<jsp:setProperty>、<jsp:getProperty>、<jsp:forward>、<jsp:plugin>、<jsp:params>等。常用的JSP动作如表2-2所示。项目5制作简单的展示网站5.2新知识点-JSP动作指令、<jsp:include>动作名称

动作说明

<jsp:include>包含一个静态的或者动态的文件<jsp:useBean>用来在JSP页面中创建一个bean实例并指定它的名字以及作用范围<jsp:setProperty>用来设置bean的属性值<jsp:getProperty>获取bean的属性的值并将之转化为一个字符串,然后将其插入到输出的页面中<jsp:forward>重定向一个静态html/jsp的文件,或者是一个程序段<jsp:params>用于传递参数,必须与其他支持参数曲标签一起使用<jsp:plugin>用于下载JavaBean或Applet到客户端执行表2-2JSP常见动作指令表项目5制作简单的展示网站5.2新知识点-JSP动作指令、<jsp:include><jsp

:include>指令可以完成JSP的动态包含操作,可以在当前的JSP文件中包含TXT文件、JSP文件、HTML文件、Servlet文件等。<jsp

:include>动作指令在进行JSP网站开发时,是被广泛使用的动作指令之一。其动作指令的语法格式为:<jsp:includepage=”被包含的文件路径|<%=表达式%>”flush=”true|false”/>或<jsp:includepage=”被包含的文件路径|<%=表达式%>”flush=”true|false”><jsp

:paramname=

"param1"value=

»value1

»/><jsp

:paramname="param2

"value=

»value2

»/></jsp

:include>在上述语法格式中,page属性表示被包含文件的相对路径或相对路径的表达式。Flush=”true”表示不接收是否在包含目标之前先刷新输出缓冲区,默认值为true。<jsp

:param>表示传递参数,即需要传递给被包含文件的参数。可以传递多个参数。name属性为参数名,value属性为参数值。项目5制作简单的展示网站5.2新知识点-JSP动作指令、<jsp:include><jsp

:include>动作指令第一种语法格式在项目4任务实现时已经使用。<jsp

:include>动作指令第二种语法格式,即带参数的语法格式,使用方法如程序2-11。

程序2-11:exam5_2_index.jsp<?xmlversion=”1.0”encoding=”UTF-8”?><%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><!DOCTYPEhtmlPUBLIC“-//W3C//DTDXHTML1.0Transitional//EN”“/TR/xhtml1/DTD/xhtml1-transitional.dtd”><htmlxmlns=”/1999/xhtml”><head><metahttp-equiv=”Content-Type”content=”text/html;charset=UTF-8”/><title>Inserttitlehere</title></head><body><jsp:includepage=”exam5_2_include.jsp”><jsp:paramvalue=”Tom”name=”stu”/></jsp:include></body></html>代码分析:该程序中,采用<jsp

:include>动作指令包含了文件exam5_2_include.jsp,在包含后,exam5_2_include.jsp需要获取stu变量并显示,因此采用第二种包含形式。通过<jsp:param>动作指令传递了参数stu,其值为Tom。项目5制作简单的展示网站

程序2-12:exam5_2_include.jsp程序2-12:exam5_2_include.jsp<?xmlversion=”1.0”encoding=”UTF-8”?><%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><%Stringstu=request.getParameter(“stu”);out.println(“姓名:”+stu);%>代码说明:该文件为被包含文件,因其需要显示一个传递的参数,因此需要从调用它的页面获取stu变量。代码中request.getParameter()为JSP内置对象request调用了其获取变量的方法getParameter。out.println()为JSP内置对象out调用了输出的方法println。

运行exam5_2_index.jsp,显示文件被包含后的效果,如图2-7所示。图2-7include动作指令显示效果项目5制作简单的展示网站5.3扩展-<jsp:forward>的使用<jsp:forward>动作指令表示把当前的页面控制权转向另外一个对象,该对象可以是一个HTML文件、JSP文件或者一个Servlet文件。<jsp:forward>的语法格式:<jsp:forwardpage=”转向的文件路径|<%=表达式%>”/>或者<jsp:forwardpage=”转向的文件路径|<%=表达式%>”><jsp

:paramname=

»param1

»value=

»value1

»/> <jsp

:paramname=

»param2

»value=

»value2

»/></jsp:forward>在上述格式中,page属性为一个字符串或者一个表达式,用来表示转向文件的路径;<jsp

:param>字句指令为传递参数,name指定参数名,value指定参数值。项目5制作简单的展示网站5.3扩展-<jsp:forward>的使用<jsp:forward>的使用示例如下。

程序2-13exam5_3_forward.jsp程序2-13:exam5_3_forward.jsp<%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><html><head><title>跳转指令应用</title></head><body> <h1>跳转指令应用:</h1> <jsp:forwardpage=”exam5_3_forward2.jsp”/> </body></html>代码说明:该程序采用<jsp:forward>动作指令,重定向到文件exam6_5_forward2.jsp。项目5制作简单的展示网站5.3扩展-<jsp:forward>的使用

程序2-14exam5_3_forward2.jsp程序2-14:exam5_3_forward2.jsp<?xmlversion=”1.0”encoding=”UTF-8”?><%@pagelanguage=”java”contentType=”text/html;charset=UTF-8”pageEncoding=”UTF-8”%><!DOCTYPEhtmlPUBLIC“-//W3C//DTDXHTML1.0Transitional//EN”“/TR/xhtml1/DTD/xhtml1-transitional.dtd”><htmlxmlns=”/1999/xhtml”><head><metahttp-equiv=”Content-Type”content=”text/html;charset=UTF-8”/><title>Inserttitlehere</title></head><body>重定向后的文件</body></html>代码说明:该页面进行了简单的显示。项目5制作简单的展示网站5.3扩展-<jsp:forward>的使用运行exam5_

温馨提示

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

评论

0/150

提交评论