Java-Web项目二-JSP基本语法课件

PPT
  • 阅读 67 次
  • 下载 0 次
  • 页数 56 页
  • 大小 3.684 MB
  • 2022-11-12 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
Java-Web项目二-JSP基本语法课件
可在后台配置第一页与第二页中间广告代码
Java-Web项目二-JSP基本语法课件
可在后台配置第二页与第三页中间广告代码
Java-Web项目二-JSP基本语法课件
可在后台配置第三页与第四页中间广告代码
Java-Web项目二-JSP基本语法课件
Java-Web项目二-JSP基本语法课件
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 56
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
文本内容

【文档说明】Java-Web项目二-JSP基本语法课件.pptx,共(56)页,3.684 MB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-3030.html

以下为本文档部分文字说明:

项目二JSP基本语法2.1理解JSP页面的构成2.2掌握JSP的基本语法2.3拓展实训2022年11月12日星期六22.1理解JSP页面的构成JSP页面遵循Java的语法规则,是超文本标记语言(HTML)与Java语言两者的融合。简言之,在静态页面中按照语法嵌

入动态代码,就构成了JSP动态页面。一个完整的JSP页面构成如图所示。2022年11月12日星期六32.2理解JSP页面的构成本任务要求熟练掌握JSP的基本语法,并能够运用脚本标记、指令标记、动作标记等JSP元素。1.2.1JSP脚本标记1.2.2JSP指令标记1.2.

3JSP动作标记2022年11月12日星期六42.2.1JSP脚本标记1.JSP脚本段语法JSP脚本段(Sciptlet)是指一个有效的程序段,在这个程序段中可以声明要用到的变量和方法、编写Java语句,

以及使用任何隐含的对象等。JSP脚本段的基本语法为<%Java程序段%>,例如:<%intsum=0;for(inti=0;i<=10;i++){sum+=I;}out.println(“<h1>sum=”+su

m+”</h1>”);%>2.2.1JSP脚本标记JSP脚本段中只能出现Java代码,不能出现其他模板元素。JSP脚本段中Java必须严格遵循Java语法。在一个JSP页面中可以有多个脚本段,在两个或多个脚本段间可以嵌入文本、HTML标记和其他JS

P元素。多个脚本段中的代码可以相互访问,单个脚本段中的Java语句可以是不完整的,但多个脚本段代码组合后的结果必须是完整的。提示:2022年11月12日星期六62.2.1JSP脚本标记【例1】多个脚本段的相互访问。在项目中创建scriplet.jsp,代码如下:2022年11月12日星期

六72.2.1JSP脚本标记在该页面中for循环被拆分到两个脚本段,中间插入一段html语句,这两个脚本段相互访问,构成完整的循环,效果如图所示。2022年11月12日星期六82.2.1JSP脚本标记2.JSP声明语法在JSP页面中,可以声明合法的变量的和方法,变量类型可以

是Java语言允许的任何数据类型。这种声明是全局变量。JSP声明(Declaration)的基本语法为<%!声明1;声明2;„声明n;%>,声明的本质就是将声明的变量和方法作为Servlet类的变量和方法,下面我们用一个例子来解释如何声明变量和

方法。【例2】声明变量和方法。本例在declaration.jsp中声明一个整型变量和一个方法,并在后面的代码段中加以调用,代码如下:2022年11月12日星期六92.2.1JSP脚本标记2022年11月12日星

期六102.2.1JSP脚本标记declaration.jsp运行后的效果如图所示:每次刷新后,count变量都会自加1,效果如图所示:2.2.1JSP脚本标记声明必须以分号(;)结尾。可以直接使用在<%@page%>中已经声明的变量和方法,不需要对它

们重新进行声明。一个声明仅在一个页面中生效。如果要在多个页面中用到,则可将它们写成一个单独的文件,然后用<%@include%>和<jsp:include>包含进来。提示:2022年11月12日星期六122.2.1JSP脚本标记3.JSP表达式语法在JSP页面中,可以用表达式(

Expression)将程序数据输出到客户端,其等价于“out.print”。表达式元素表示的是一个在脚本语言中被定义的表达式,在运行后被自动转换为字符串,然后插入到这个表达式在JSP页面中的位置并显示。JSP表达式的基本语法为<%=变量或表达式%>,表达式的本质就是在将JSP页

面转化为Servlet后,使用out.print()将表达式的值输出,下面我们用一个例子来理解表达式的妙用。2022年11月12日星期六132.2.1JSP脚本标记【例3】表达式实例本例在expression.jsp中定义了字符串变量url,并利用表达式指定了超级链接的页面以及处

理表单信息的页面,代码如下:2022年11月12日星期六142.2.1JSP脚本标记创建expressionHref.jsp,代码如下:页面expression.jsp的运行效果如图所示:2022年11月12日星期六152.2.1JSP脚本标记点击超级链接“点击跳转”

或单击按钮“点击跳转”,都会定向到expressionHref.jsp,如图所示。提示:声明必须以分号(;)结尾。2022年11月12日星期六162.2.1JSP脚本标记4.JSP注释语法在JSP页面中,

注释分为两大类:静态注释和动态注释。静态注释是直接使用HTML风格的注释,这类注释在浏览器中查看源文件时是可以看到注释内容的;动态注释包括Java注释和JSP注释两种,这类注释在浏览器中查看源文件时是看不到注释内容的。注释的语法为:静态注释:<

!--注释内容-->Java注释://单行注释/*多行注释*/JSP注释:<%--注释内容--%>2022年11月12日星期六172.2.2JSP指令标记JSP指令标记(DirectiveElements)为J

SP引擎设计的,该类标记并不直接产生任何可见的输出,而是告诉JSP引擎如何处理JSP页面的其余部分。例如:可以指定一个专门的错误处理网页,当JSP页面出现错误时,可以由JSP引擎自动地调用错误处理网页。

常用的JSP指令标记包括:page页面指令,include静态指令,还有taglib指令。2022年11月12日星期六182.2.2JSP指令标记1.page页指令标记Page指令用于定义域整个JSP页面相关的各种属性。其基本语法为:<%@

page属性1=”值1”属性2=”值2”...属性n=”值n”%>page指令常用的的属性和默认值如表所示。2022年11月12日星期六192.2.2JSP指令标记例如:在某个JSP页面中,如果需要导入Java的sql包,并设置错误处理页面,则:<%@pagecontentType=”te

xt/html;charset=GB2312”%><%@pageimport=”java.sql.*”%><%@pageerrorPage=”err.jsp”%>提示:无论page指令出现在JSP页面中的什么地方,它作

用的都是整个JSP页面(包括静态的包含文件,但不能作用于动态的包含文件),为了保持程序的可读性和遵循良好的变成习惯,page指令最好是放在整个JSP页面的起始位置。在一个JSP页面中可以使用多个<%@page%>指令,但其

中的属性只能用一次,不过import属性例外,它可以多次出现,引入多个类和包,这和Java中的import语句差不多。2022年11月12日星期六202.2.2JSP指令标记1.include静态包含指令标记include指令用于引入其他JSP页

面,引入后,JSP引擎会将这两个JSP页面翻译成一个servlet。因此include指令通常也别称为静态引入。其基本语法为:<%@includefile=”相对URL”%>所谓静态,是指file属性的值不能是一个变量,也不可以在file所指定的文件后添加任何参数。2022年1

1月12日星期六212.2.2JSP指令标记【例4】include指令标记使用实例用include指令引入相同文件夹下的head.jsp页面,代码如下:2022年11月12日星期六222.2.2JSP指令标

记创建head.jsp,代码如下:运行include.jsp的效果如图所示。2.2.2JSP指令标记被引入的文件必须遵循JSP语法。被引入的文件可以使用任意的扩展名,但都会被JSP引擎按照JSP页面的处理方式去处理,为了见名知

意,建议使用“.jspf”(JSPfragment,即JSP片段)作为静态引入文件的扩展名。被引入的文件中不要包含<html></html>、<body></body>等标记,因为这样会影响引入文件中同样的标记。引入和被引入文

件中的指令不能冲突(page指令中的pageEncoding和import属性除外)。提示:2022年11月12日星期六242.2.3JSP动作标记与指令标记不同,JSP动作标记(ActionElement)是在客户端请求时动态执行的。JSP动作标记是一种特殊标签,并且以前

缀jsp和其他的HTML标签相区别,利用JSP动作标记可以实现很多功能,包括动态地插入文件、重用JavaBean组件、把用户重定向到另外的页面、为Java插件生成HTML代码等。2022年11月12日星期六252.2.3JSP动作标记1.<jsp:include><j

sp:include>动作标记可以用来包含其他静态或动态文件。其基本语法为:不带参数<jsp:includepage=”相对URL”flush=”true|false”/>带参数<jsp:includepage=”相对URL”flush=”true|f

alse”><jsp:paramname=”属性名”value=”属性值”/><jsp:param„</jsp:include>其中,属性page指向的是被包含文件的相对路径;当属性flush为true时,表示实时输出缓冲区,它的默认值是false

。<jsp:param>子句能传递一个或多个参数给动态文件,也可以在一个页面中使用多个<jsp:param>来传递多个参数给动态文件。2022年11月12日星期六262.2.3JSP动作标记【例5】带参数

的inlcude动作标记本例在incluldeJsp.jsp中,通过动作标记<jsp:include>引入date.jsp,并利用<jsp:param>向被引入的页面传递参数,此处要通过request内置对象的setChara

cterEncoding(“编码格式”)来设定编码格式,以避免传递中文时乱码。includeJsp.jsp的代码如下:2022年11月12日星期六272.2.3JSP动作标记创建date.jsp,代码如下:

2022年11月12日星期六282.2.3JSP动作标记运行includeJsp.jsp的效果如图所示。提示:被引入的文件必须遵循JSP语法。被引入的文件可以使用任意的扩展名,但都会被JSP引擎按照JSP页

面的处理方式去处理,为了见名知意,建议使用“.jspf”(JSPfragment,即JSP片段)作为静态引入文件的扩展名。2022年11月12日星期六292.2.3JSP动作标记2.<jsp:forward><jsp

:forward>动作标记用于在服务器端终止当前页面的运行,并重定向到其他指定页面。重定向的目标可以是静态的HTML页面、JSP页面,或者是一个程序段。其基本语法为:不带参数<jsp:forwardpage=”页面URL”>

带参数<jsp:forwardpage=”页面URL”><jsp:paramname=”属性名”value=”属性值”/><jsp:param„</jsp:forward>其中,属性page指向的是重定向的页面路

径。2022年11月12日星期六302.2.3JSP动作标记【例6】带参数的forward动作标记本例在forward.jsp中,通过<jsp:forward>动作标签将页面重定向到forwardTo.jsp,并利用<jsp:param>传递参数。在forwardTo.

jsp中,利用request内置对象中的getParameter(“变量名”)来接受传递过来的参数。创建forward.jsp,代码如下:2022年11月12日星期六312.2.3JSP动作标记创建forwardTo.js

p,代码如下:forward.jsp的运行效果如图2-9所示。2022年11月12日星期六322.2.3JSP动作标记提示:forward.jsp执行到<jsp:forward>标记出现处时停止当前页面的执行,并重定向到新的页面,也就是说,forward.jsp中<jsp

:forward>标记后的部分不执行,如图2-9所示,并没有输出表达式<%=i%>。<jsp:forward>动作标记执行的是服务器端的跳转,浏览器地址不变,如图2-9标红方框所示,地址仍为…/forward.jsp。2022年11月12日星期六332.2.3JSP动作标记3.<jsp:pa

ram><jsp:param>动作标记用来传递参数给JSP页面。其基本语法为:<jsp:paramname=”参数名”value=”{参数值|<%=表达式%>}”/>其中,属性name表示传递的参数名称,并

属性value设置属性的值。提示:JSP标记不同于HTML标记,属性值必须加上双引号,否则执行时会报错。使用<jsp:param>动作标记用来传递参数,在JSP页面中通过request.getParameter(“属性名”)来获取参数的值。<jsp:param>

动作标记必须配合<jsp:include>、<jsp:forward>或<jsp:plugin>等标记使用,在加载外部程序或是网页转换的时候,传递参数给另一个JSP页面,单独使用没有意义。2022年11月12日星期

六342.2.3JSP动作标记4.<jsp:plugin><jsp:plugin>动作标记用于在JSP网页中加载JavaApplet或JavaBean程序组件,与HTML的<Applet>与<Object>标签有着类似的功能。这个元素有许多属性设置,如表所示

。2022年11月12日星期六352.2.3JSP动作标记5.<jsp:useBean>、<jsp:setProperty>和<jsp:getProperty>动作标记5.1<jsp:useBean>动作标记<jsp:useBean>动作标记用来加载JSP页

面中使用的JavaBean,其语法格式如下:<jsp:useBeanid=”JavaBean实例名称”scope=”page|request|session|application”class=”package.class”></jsp:useBean>其中,id指定该Ja

vaBean实例变量的名称,scope指定该Bean变量的有效范围:page指只在当前JSP页面有效;request指在任何执行相同请求的JSP页面中使用该Bean,直到页面执行完毕;session指从创建该Bean开始,在相同sessi

on下的JSP页面中可以使用该Bean;application指从创建该Bean开始,在相同application下的JSP页面可以使用该Bean。例如:<jsp:useBeanid=”clock”scope=”page”class=”java.u

til.Date”/>2022年11月12日星期六362.2.3JSP动作标记5.<jsp:useBean>、<jsp:setProperty>和<jsp:getProperty>动作标记5.2<jsp:setProp

erty>动作标记<jsp:setProperty>动作标记用于设置已经实例化的Bean对象的属性,其基本语法格式为:<jsp:setPropetyname=”JavaBean实例名称”{property=”*”|property=”属性名”[param=”参数”]|property=”属性名”v

alue=”{String|<%=表达式%>}”}/>提示:<jsp:setProperty>中name值必须和<jsp:useBean>中的id值相同,且大小写敏感2022年11月12日星期六372.2.3JSP动作标记5.<jsp:useBean>、<jsp:setProperty>和<j

sp:getProperty>动作标记5.3<jsp:getProperty>动作标记<jsp:getProperty>动作标记可获取Bean的属性值,用于在页面中显示。其基本语法格式为:<jsp:getPropertyname=”JavaBean实例名称”property=”属性名”/>202

2年11月12日星期六382.3拓展实训任务要求完成一个主题网站,进一步掌握JSP的基本语法。任务描述2.3.1主题网站的运行效果当我们在浏览主题网站时,经常会发现,这些网站的不同频道都是用相同的Logo和频道导

航做题头。本任务就是要完成一个主题网站,如下面3张图所示。如果在每个页面的题头部分都放置网站的Logo频道导航,则会导致的问题是,当网站Logo或频道需要更换时,就需要对每一个频道的网页重新设计,这样的维护既费时又费力。因此,为了便于实现快速维护,我们将两个

相对独立的网页拼接成第一张图所示的页面,更改Logo图时,我们只需要对top.html进行调整即可。2022年11月12日星期六392.3.1拓展实训2022年11月12日星期六402.3.1拓展实训2022年11月12

日星期六412.3.1拓展实训2022年11月12日星期六422.3.2功能设计1.创建工程启动IntelliJIDEA,创建web应用chapter2,在web文件夹下创建images文件夹,并将top.jpg导入到ima

ges文件夹中。在web文件夹下创建JSP类型文件welcome.jsp、index.jsp、feature.jsp、contact.jsp和HTML类型文件top.html、welcome.html、feature.html、contact.html。2.将已有资

源添加到当前工程展开chapter2工程,可以看到chapter2工程下的web子文件。选中web子文件夹,单击鼠标右键,在弹出的快捷菜单中选择New→Directory命令,创建images文件夹,将制作

好的图片文件top.jpg复制到该文件夹。3.HTML页面设计首先创建top.html、welcome.html、feature.html和contact.html页面,如下3张图所示。2022年11月1

2日星期六432.3.2拓展实训2022年11月12日星期六442.3.2拓展实训2022年11月12日星期六452.3.2拓展实训2022年11月12日星期六462.3.2拓展实训top.html代码如下

:2022年11月12日星期六472.3.2拓展实训welcome.html代码如下:2022年11月12日星期六482.3.2拓展实训feature.html代码如下:2022年11月12日星期六492.3.2拓展实训co

ntact.html代码如下:2022年11月12日星期六502.3.2拓展实训4.JSP页面功能设计(1)welcome.jsp功能设计在chapter2工程中,创建welcome.jsp页面,其功能是将top.html和welcome.html拼接成一个网页显示。代码如

下:2022年11月12日星期六512.3.2拓展实训(2)feature.jsp功能设计在chapter2工程中,创建feature.jsp页面,其功能是将top.html和feature.html拼接成一个网页显示。代码如下:2022年11月12日星期六522.3.2

拓展实训(3)contact.jsp功能设计在chapter2工程中,创建contact.jsp页面,其功能是将top.html和contact.html拼接成一个网页显示。代码如下:2022年11月12日星期六532.3.2拓展实训(4)index.jsp功能设计在top.html中,

“学院首页”指向的链接为index.jsp?choice=1,其中,index.jsp表示要链接到的页面;链接地址后的?,表示后面部分为所传递的参数;choice表示的传递的参数名;1表示的是传递参数的参数值

。如传递多个参数,则用&进行连接。相应的,“学院特色”指向的链接为index.jsp?choice=2;“联络方式”指向链接index.jsp?choice=3。index.jsp通过request.getParameter(“choice”)获取参数值,并将相应的页面嵌入到ind

ex.jsp的当前位置。代码如下:2022年11月12日星期六542.3.2拓展实训2022年11月12日星期六55课后习题1.请简述JSP页面的构成。2.请简述JSP静态注释和动态注释的区别及用法。3.请简述指令标签include和动作标签include的区

别。谢谢!

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?