第五章 Java Web编程技术1.ppt_第1页
第五章 Java Web编程技术1.ppt_第2页
第五章 Java Web编程技术1.ppt_第3页
第五章 Java Web编程技术1.ppt_第4页
第五章 Java Web编程技术1.ppt_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

1、Web编程技术,WEB编程技术分为: 浏览器端编程技术 HTML、CSS、JavaScript语言和VBScript语言。 服务器端编程技术 3P( ASP、JSP和PHP) Servlet JavaBean JDBC 编程架构和框架,第五章 JSP编程技术,JSP简介,JSP技术是一种建立在Servlet规范提供的功能之上的动态网页技术,和ASP、PHP类似,它们都是在通常的网页文件中嵌入脚本代码来生成动态内容,不过JSP文件中嵌入的是Java代码和JSP标记。JSP网页(*.jsp)就是在传统的网页HTML文件中加入Java程序片段(Scriptlet)和JSP标记(Tag)构成的。, M

2、y JSP myfist.jsp starting page This is my JSP page. ,我的第一个JSP网页,Jsp的本质是servlet,JSP技术是在Servlet技术上发展起来的,JSP最终将编译成一个Servlet,所以其本质仍是一个Servlet。这个编译过程发生在首次访问JSP页面的时候,编译完成后其实是一个Servlet对外提供服务,当后继的访问者再访问这个JSP时,不再重新编译,直接由Servlet响应请求,这也是为什么JSP网页比其它动态网页响应更快的原因。,案例 探密jsp如何变成servlet,Jsp比servlet有什么好处?-改进输出 方便界面设计,

3、Servlet输出全部使用输出流来输出,形如out.print()这样的语句,这对于复杂的网页来说非常不方便,JSP正是对Servlet输出这部分作出重大的改进,允许使用直接使用HTML和JavaScript来输出,并可在一些工具中可视的编写网页,极大方便了网页的设计和修改。,Jsp相比servlet有何缺点?-多种代码 影响可读性 不利逻辑处理,但与此同时,如果大量的Java、HTML、JavaScrpt三种代码混合在一起,会影响程序的结构和可读性,不利于业务逻辑的处理。,我们怎样办?-各取之长 jsp做页面、servlet处理业务,所以Sevlet和JSP各有优点,JSP侧重于页面的表现,

4、Servlet更侧重于业务逻辑的实现。 在MVC模式中JSP技术用于表现层View,Servlet主要用于控制层Controller或业务逻辑层,JavaBean用于模型层Model。,Jsp主要用于表现层 主要是html代码,JSP技术虽然从Servlet技术发展而来,但它主要用于表现层,在网页中主要的代码是HTML代码,这些HTML代码是JSP网页的模板,是显示的框架。 (分析第一个页面的框架),Jsp 和 html,功能:都是表现层UI,即界面 本质不同:html是纯静态网页、jsp是动态网页,这种动态的含义是指内容可以变化的,要由程序运行的结果(或数据库)来决定的。 所以可以把JSP页

5、面可以看成是加强版的HTML,它由各种元素组成,可实现动态交互。,理解JSP程序的执行,理解静态和动态的本质区别 HTML网页是静态,这些网页早就存放在WEB服务器的WEB容器中,当我通过HTTP协议访问时,WEB服务器只是简的把该网页发回给浏览器进行显示。 JSP网页的内容是动态的,其内容事先并没有固定,当我们访问JSP网页时,WEB服务器把该请求转发给后端的JSP容器,它是WEB容器的一个扩展,JSP容器把该JSP编译成Servlet,转到Servlet容器,运行这个Servlet,产生的输出形成一个网页,再由WEB容器发回给浏览器显示,图解jsp运行过程,例5-1 理解服务器端运行,程序

6、名:ch5_1/WebRoot/5_01.jsp var dnow = new Date(); dhours = dnow.getHours(); dminutes = dnow.getMinutes(); dseconds = dnow.getSeconds(); document.write(浏览器时间: + dhours + : + dminutes + : + dseconds); ,运行结果,结果后面的秘密-服务器运行与浏览器端运行的不同,的内容服务器端运行,输出只是结果(以html、script形式存在) 其他的html、script照样输出 所有输出的html、script代码传

7、到浏览器,由浏览器负责解释显示出来,再探jsp变servelt,5.2 JSP页面元素,JSP页面的基本结构 JSP页面是由多种元素构成的,可以分为注释、指令、脚本元素、动作和模板数据5个部分。,Jsp家谱,JSP的脚本元素,脚本标识(Script)包括三个部分:声明(Declaration),表达式(Expression)和脚本代码(Scriptlet)。,声明(Declaration),声明的作用是在其脚本元素中声明可以使用的变量、方法和类。声明是以“”为结尾的标记。其语法格式为: ,声明的例子, ,声明的规则,声明必须以”;”结尾(Scriptlet有同样的规则,但是表达式就不同). 可

8、以直接使用在中被包含进来的已经声明的变量和方法,不需要对它们重新进行声明. 在或元素包含进来。,深入理解声明的本质,JSP文件中用内声明的变量或方法将变成为Servlet的成员变量,这些变量或方法将被所有访问该页面的线程所共享,不具有线程安全性。因此应尽量不用声明来定义变量,若需要局部变量时,则直接在java脚本代码(Scriptlet)中定义。,例:页面计数器-理解声明的多用户单页面共享的本质, 个人访问本站,共享的麻烦与解决,这种共享变量或方法是一种临界资源,可能会发生与时间有关的错误,我们可以在声明时在变量或方法前加上synchronized关键字,互斥的访问这些共享资源,当一个用户访问

9、该变量或方法时,其它的用户必须等待,直到该用户完成操作,,互斥访问函数的声明与使用,程序名:5_03.jsp 您是第个访问本站的客户。,表达式(Expression), 例如: 表达式被执行后的结果被自动转化为字符串返回到客户端。表达式等效于JSP预定义变量out.print()方法。 例如: 等效于 ,注意事项,不能用分号(”;”)来作为表达式的结束符,但是同样的表达式用在声明中就需要以分号来结尾。 表达式元素能够包括任何在Java中有效的表达式。一个表达式在形式上可以很复杂,可能由一个或多个表达式组成,而这些表达式的运算顺序是从左到右,依次计算,然后转换为字符串。 因表达式的结果自动转化字符串,所以表达式可以出现任何需要字符串的地方。表达式也能作为其它JSP元素的属性值。 例如: height= 程序把表格的宽设置为a的值,高设置为a/2。可见表达式的使用非常灵活。,脚本代码(Scriptlet),Scriptle

温馨提示

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

评论

0/150

提交评论