版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、WEB应用程序介绍Web应用程序就是一种通过互联网能够让Web浏览器和服务器通讯的计算机程序。不同于静态Web站点通过使用计算机程序来实现动运行Web程序所需要的最基本的网站的,Web应用程序动态创建页面。采用动态方式生成的态的特性。这种动态的应用程序可以用各种计算机语言来编写。组成部分有:网页,Web服务器,客户端浏览器以及在客户端和Web服务端提供通讯的HTTP是我们想要向用户展示的信息;网页的结构部网页的表现部分,可以理解为对网页的内容进行格协议。网页:网页的具体组成分为网页的内容,分,可以理解为对网页的内容进行排版;式化;最后是网页的行为部分,就是网页需要实现的功能,如与用户交互,响应
2、鼠标或者按键事件等。Web服务器:Web服务器实际上是一种连接在Internet上的计算机软件。它负责Web浏览器提交的文本请求。是用来存放我们编写好的网页并监听端口。Web工作原理:简单的讲就是先把编写好的网页存在服务器上,服务器监听发送过来的HTTP请求,和客户端建立一个连接,接收到客户端的请求之后,把用户需要的内容封装成HTTP请求发送给客户端,然后断开与客户端的连接,之后客户端的浏览器解析HTML,显示网页内容。HTTP协议:该协议描述了Client和Server之间请求和响应的过程:Client在本地主机向运行于远程主机上的Server请求链接,连接成功之后通过GET来访问Serve
3、r端对象(可以是普通网页,也可以是通过CGI或ISAPI生成的动态页面),Server端在连接终止之前将请求的对象或者是错误消息返回给Client,结束响应过程。JAVAWEB应用程序结构:1、页面中心结构:浏览器对JSP页面的直接请求调用,JSP中直接包含了处理各种业务的逻辑代码,其结构图如图所示:该种结构的特点是大量的Javascriptlet代码直接嵌入JSP页面中,对于较为简单的应用程序,不失为一种直接简便的方法,但是此种方法减少了模块重用的机会,且不利于角色功能的划分。于是,我们将处理后台资源的逻辑代码用Bean进行封装,发展成为带Bean的页面中心结构:带Bean的页面中心结构再结
4、合自定义标志,确实可将一部分代码从JSP中移出,获得较为干净的JSP,但是此种结构随着其功能的增加,层次变得不够清晰,其扩展性也变得较差,不利于维护。2、MVC结构MVC即模型视图控制器(Model-View-Control),这3个组件映射到3个主要的实现技术Bean.JSP以及Servlet。模型视图后台资潭控制器模型执行业务逻辑的功能,比如保存处理数据、与数据库连接、拼装SQL语句等。视图执行显示逻辑的功能,即将获取的数据动态显示于网页上。控制器是模型和视图的粘和剂,向模型和视图提供逻辑处理层和授权,即对不同事件调用相应的视图和模型。下面结合上图分析基于MVC结构的应用程序在处理用户请求
5、时的具体步骤:浏览器发出服务请求,该请求转发给控制器;控制器在检查用户请求的参数后,初始化并调用相应的业务组件来处理请求,该业务组件就叫做模型;模型含有处理该用户请求的所有业务规则,它与后台资源进行交互,并将提取的信息包装起来返回给控制器;控制器接收从模型返回的数据,并选择显示数据的结果页面,即是视图;控制器在处理完请求后将结果返回给浏览器较流行的结构:struts负责显示层,hibernate负责持久层,spring负责中间的业务层。jsp和servlet的关系一.Servlet是什么客户机/服务器计算的发展。Java提供了一整套客户机/服务器解决方案,在这个方案中,程序可以自动地下载到客户
6、端并执行,这就是applet。但是它仅仅是问题的一半。问题的另一半就是Servlet。servlet可以被认为是服务器端的applet,是用Java编写的服务器端程序,由服务器端调用和执行的任何Java类。servlet被Web服务器加载和执行,就如同applet被浏览器加载和执行一样。servlet从客户端(通过Web服务器)接收请求,执行某种作业,然后返回结果。servlet的工作流程如下:1、客户端通过HTTP提出请求。2、Web服务器接收该请求并将其发给servlet。如果这个servlet尚未被加载,Web服务器将把它加载到Java虚拟机并且执行它。3、servlet将接收该HTTP
7、请求并执行某种处理。4、servlet将向Web服务器返回应答。5、Web服务器将从servlet收到的应答发送给客户端。二、Web浏览器并不直接和servlet通信,servlet是由Web服务器加载和执行的。Servlet的结构在ServletAPI中最重要的是Servletinterface.所有的servletsimplement(执行)这个interface,方式多种:或者是直接的,或者通过extending这个class执行它。当一个servlet接收来自客户端的调用请求,它接收两个对象:一个是ServletRequest,另外一个是ServletResponse。ServletR
8、equestclass概括从客户端到服务器之间的联系,而ServletResponseclass概括从servlet返回客户端的联系。ServletRequestinterface可以获取到这样一些信息如由客户端传送的阐述名称,客户端正在使用的协议,产生请求并且接收请求的服务器远端主机名。它也提供获取数据流的servlet:ServletInputStream,这些数据是客户端引用中使用HTTPPOST和PUT方法递交的。一个ServletReque的子类可以让servlet获取更多的协议特性数据.例如:HttpServletRequest包含获取HTTP-specific头部信息的方法。Se
9、rvletResponseinterface给出相应客户端的servlet方法。它允许servlet设置内容长度和回应的mime类型,并且提供输出流:ServletOutputStream,可以发回相应数据。ServletResponse子类可以给出更多protocol-specific容量的信息。例如:HttpServletResponse包含允许servlet操作HTTP-specific头部信息的方法。三、servlet的主要功能创建并返回一个包含基于客户请求性质的动态内容的完整的HTML页面。创建可嵌入到现有HTML页面中的一部分HTML页面(HTML片段)。与其它服务器资源(包括数据
10、库和基于Java的应用程序)进行通信。用多个客户机处理连接,接收多个客户机的输入,并将结果广播到多个客户机上。例如,Servlet可以是多参与者的游戏服务器。当允许在单连接方式下传送数据的情况下,在浏览器上打开服务器至applet的新连接,并将该连接保持在打开状态。当允许客户机和服务器简单、高效地执行会话的情况下,applet也可以启动客户浏览器和服务器之间的连接。可以通过定制协议或标准(如IIOP)进行通信。对特殊的处理采用MIME类型过滤数据。将定制的处理提供给所有服务器的标准例行程序。例如,Servlet可以修改如何认证用户。四、JSP是什么?JSP是一种脚本语言,包装了JavaServ
11、let系统的界面,简化了Java和Servlet的使用难度,同时通过扩展JSP标签(TAG)提供了网页动态执行的能力。尽管如此,JSP仍没有超出Java和Servlet的范围,不仅JSP页面上可以直接写Java代码,而且JSP是先被译成Servlet之后才实际运行的。JSP在服务器上执行,并将执行结果输出到客户端浏览器,我们可以说基本上与浏览器无关。它是与JavaScript不同的,JavaScript是在客户端的脚本语言,在客户端执行,与服务器无关。JSP的工作流程如下图:browserServletContainerEnterpriseInformationSystans(EK)五、JSP
12、和Servlet的区别与联系JSP与Servlet之间的主要差异在于,JSP提供了一套简单的标签,和HTML融合的比较好,可以使不了解Servlet的人可以做出动态网页来。JSP修改后可以立即看到结果,不需要手工编译,JSP引擎会来做这些工作;而Servelt则需要编译,重新启动Servlet引擎等一系列动作。JSP引擎通常架构在Servlet引擎之上,本身就是一个Servlet。在JSP页面第一次被请求时,JSP引擎会将JSP原始文件转换成Servlet源代码,然后调用Java编译器,编译成Servlet,并在Servlet引擎中执行。当再次有请求的时候,JSP引擎会检查已编译好的JSP是否比原来的JSP原始文件要新,如果是,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度大豆产业园区建设与运营合同4篇
- 二零二五版酒店行业HSE风险管理与应急预案合同3篇
- 2025年度城市景观广告牌拆除及环保修复施工合同范本4篇
- 2025年度环保节能设备销售及安装合同4篇
- 二零二五年度大理石石材工程安全质量承包合同模板3篇
- 2025年浙教版七年级科学上册月考试卷
- 消费者标签信息准确度评估-洞察分析
- 2025年仁爱科普版七年级地理上册阶段测试试卷含答案
- 2025年人教版PEP七年级科学上册月考试卷
- 2025年冀教新版九年级地理上册月考试卷
- 常见老年慢性病防治与护理课件整理
- 履约情况证明(共6篇)
- 云南省迪庆藏族自治州各县区乡镇行政村村庄村名居民村民委员会明细
- 设备机房出入登记表
- 六年级语文-文言文阅读训练题50篇-含答案
- 医用冰箱温度登记表
- 零售学(第二版)第01章零售导论
- 大学植物生理学经典05植物光合作用
- 口袋妖怪白金光图文攻略2周目
- 光伏发电站集中监控系统通信及数据标准
- 三年级下册生字组词(带拼音)
评论
0/150
提交评论