第一章 Web应用程序-概述.ppt
第一章Web 应用程序 概述本章目标本章目标l描述 Web 应用程序多级架构视图l回顾 HTTP 协议l描述典型 Web 应用程序的结构l描述 Web 开发过程2桌面应用程序桌面应用程序 2-1Windows 媒体播放器用户选择一个 MP3 文件媒体播放器播放 MP3 文件用用 户户3桌面应用程序桌面应用程序 2-2用户Windows 媒体播放器请求 =选择要播放的文件用户发送一个请求播放器发送一个响应响应 =媒体播放器播放选定的文件媒体播放器是桌面应用程序的一个示例4实现手机号码归属地查询实现手机号码归属地查询 3-1 方式方式1:手机号码归属地查询软件:手机号码归属地查询软件 免费版免费版 6.1.8.08085实现手机号码归属地查询实现手机号码归属地查询 3-2方式方式1:手机号码归属地查询软件:手机号码归属地查询软件 免费版免费版 6.1.8.08086实现手机号码归属地查询实现手机号码归属地查询 3-3 方式方式2.网站:网站:http:/7应用程序体系结构应用程序体系结构软件应用程序组件软件应用程序组件-表示逻辑-业务逻辑-数据存取逻辑体系结构的类型体系结构的类型-一层-二层-三层8软件系统体系结构软件系统体系结构 l两层(C/S结构):(Client/Server)结构 即大家熟知的客户机和服务器结构(一般指数据库服务器)。一般建立在专用的网络上,小范围里的网络环境。在这种结构下通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。1、数据库服务器运行数据负荷较轻 2、数据的储存管理功能较为透明 3、操作方便,反映速度快 4、C/S架构的劣势是高昂的维护成本。如业务逻辑变化,需要更新所有的客户机的程序9软件系统体系结构软件系统体系结构 三层(B/S结构)B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。1、维护和升级方式简单 2、成本降低,选择更多 3、应用服务器运行数据负荷较重。需要专门的服务器处理业务逻辑,即业务层。浏览器只是显示而已,即表示层10开发工具:开发工具:l1.C/S C/S的开发工具一般包括 C/C+、VB、VC、Delphi、Pb、VB、BCB、C#l2.B/S B/S的开发工具一般是JSP、ASP、PHP、ASP.Net11l特殊lDelphi开发12Web 应用程序体系结构应用程序体系结构Web 应用程序使用三层体系结构表示层表示层客户端客户端业务层业务层Web 服务器服务器数据库数据库数据层数据层13HTTP 协议协议 3-1获取文件HTTP获取图像 /bar01.jpg HTTP/1.1HTTP/1.1 200 OK收到的文件 l 超文本传输协议l 无状态协议l 用于通过 Internet 发送请求消息和响应消息l 使用端口接收和发送消息,默认为80端口14lHTTP 消息包括:l请求l响应HTTP 协议协议 3-2请求消息请求消息请求行标题信息方法资源名称版本GET/POSTbar01.jpgHTTP/1.1浏览器类型内容类型User-Agent:Mozilla/4.0(compatible;MSIE 4.0:Windows 95 Accept:image/gif,image/jpeg,text/*,*/*响应消息响应消息 状态行标题信息版本状态代码说明HTTP/1.1200OK服务器软件修改日期大小(字节)内容类型Server:JavaWebServerLast modified:Tuesday,07-Sep-04 1:14:34 GMTContent-length:100Content-type:text/plain15HTTP 协议协议 3-3 HTTP 协议使用以下方法发送请求信息:lGET 方法lPOST 方法lGET 方法l用于检索信息(如文档、图表或数据库请求结果)l请求的页面可以被设置为书签和使用电子邮件发送l请求信息作为查询字符串发送查询字符串(240255 个字符)lPOST 方法l用于发送敏感信息(如信用卡号)或要保存到数据库中的信息l请求的页面不能设置为书签或不能通过电子邮件发送l发送的数据没有大小限制16ASP、.Net、PHP、JSP 比较比较 技术ASPASPASP.netASP.netPHPPHPJSPJSP倡导组织MicrosoftMicrosoftZendSUN性质一种技术一种技术一种语言一种技术主要开发语言VBScript、JScriptC#、VB.netPHPJava主要服务器IISIISIIS+PHPTomcat+JDKApache+PHPApache+Tomcat+JDKJboss,Weblogic,WebSphere常用数据库MS SQL serverMS SQL serverMySQLOracleMS Office AccessMS Office AccessMySQL通过桥接可支持的数据库所有所有所有所有跨平台运行不支持否是是编译执行否是可以是组件扩展需手工注册丰富比较丰富丰富多线程不支持支持简单支持支持面向对象支持一丁点支持4.x/5.x 简单支持,6.0 完美支持支持学习难易度非常简单稍难简单稍难网上虚拟主机租用非常便宜便宜非常便宜稍贵17Web 应用程序目录结构应用程序目录结构 Web 应用程序应用程序lHTML 文件l图像lServletlJSP 页面lJavaBeanlJar 文件lAppletl标签文件l标签库描述符文件l部署描述器.war 文件Web 应用程序目录结构index.html,login.jsp,contactus.jspViewBooks.jsp,logo.jpgbook1.jpgAddBook.class,DeleteBook.class mbase.jar,msqlserver.jar,msutil.jarDisplayBook.tag web.xml,books.tld 文档根目录文档根目录文档根目录文档根目录静态文件(html,images)WEB-INF JSP类库标签.tld,web.xml18n利用servlets,可以方便地:n获取 显式数据(form data)n获取隐藏数据(HTTP request headers)n设置状态代码(HTTP status codes)和响应头(HTTP response headers)n使用cookies 和 sessionn在不同的servlet之间共享数据n记住不同请求之间的数据nn但是,利用servlet做以下事情却很痛苦:n使用 println 语句生成HTML文档n维护所生产的 HTML文档JSP(Java Server Page)19JSP(Java Server Page)nJSP(Java Server Pages)是服务器端的脚本语言脚本语言,是一种在HTTP页面中加入Java语言而生成动态页面的技术:加入了新的标签(加入了新的标签(,)。)。nJSP是以Java和Servlet为基础开发而成的动态网页生成技术,它的底层实现是Java Servlet。nJSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端所请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。n特点:面向对象、跨平台,和Servlet一样稳定,可以使用Servlet提供的API,克服了Servlet的缺点。n应用:一般和JavaBeans结合使用,从而将界面表现和业务逻辑分离。20JSP的执行过程的执行过程21Web 应用程序开发过程应用程序开发过程l设计目录结构l编写 Web 应用程序代码l编写部署描述符l编译代码l将 Web 应用程序打包l部署 Web 应用程序l执行 Web 应用程序22总结总结l与桌面应用程序相比,Web 应用程序易于维护、升级和部署l使用 GET 方法请求的页面可以设置为书签或通过电子邮件发送l发送信用卡号、密码等敏感信息时使用 POST 方法l在三层体系结构中,表示层不能与数据层直接交互lWeb应用程序有其标准的目录结构和文件要求23运行环境运行环境l1.JDK:Java应用程序开发包,包含编译运行Java程序所需的工具包和开发Java应用程序所需的类函数库。l 2.Tomcat:解释JSP网页,并且回传解释过后的JSP网页至用户计算机的浏览器。241.Java安装配置安装配置l1).安装Java,双击 jdk-6u12-windows-i586-p.exe运行Java安装软件,所有安装选项默认即可。l2).配置Java环境变量:l右击“我的电脑”,选择“系统属性”,再选择“高级”选项卡,点击“环境变量”按钮,然后新建环境变量:JAVA_HOME=C:Program FilesJavajdk1.6.0_12lCLASSPATH=.;%JAVA_HOME%jrelib (如果有,则添加在后面)l编辑环境变量PATH,在PATH值后面添加%JAVA_HOME%binl3).测试:在cmd中运行:java-version,运行结果将显示java版本信息,说明安装成功。252.Tomcat 安装配置安装配置l将apache-tomcat-6.0.18.zip(绿色版本)解压到C盘下,直接运行C:apache-tomcat-6.0.18下的bin目录中的startup.bat,即可启动tomcat服务器。(退出tomcat:bin目录下有一个:shutdown.bat,运行它,将关闭Dos窗口)l测试:在浏览器中运行http:/localhost:8080/,如果显示下图,说明安装成功。263.测试测试1l在C:apache-tomcat-6.0.18webappsROOT目录下,l建立一个test18.jspl测试:在浏览器中运行http:/localhost:8080/test18.jsp274.测试测试2l将test2目录复制到C:apache-tomcat-6.0.18webapps目录下l测试:在浏览器中运行http:/localhost:8080/test2/index.jsp28