基于JAVA的WEB应用开发实训教程.doc
《基于JAVA的WEB应用开发实训教程.doc》由会员分享,可在线阅读,更多相关《基于JAVA的WEB应用开发实训教程.doc(64页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 第一章 WEB应用体系架构简介基于Java技术的Web应用开发1Web应用体系架构基本知识511Web应用的B/S结构编程模式512 协议请求相应模式513Web应用程序的发展514Web应用程序中的服务器端技术5u WEB应用模型:基于B/S结构:浏览器服务器 (WEB服务器+WEB应用服务器)IBM SERVER,MS IIS, APACHEIBM WEBSPHERE APPLICATION SERVERu 请求/响应模型:请求消息和响应消息一个完整的 会话过程:1)客户端和WEB服务器建立连接,通过默认8080端口。2)连接后,客户端向服务器发送 请求消息,WEB服务器处理请求消息,并
2、将响应消息送给客户端,3)连接关闭 是一个无状态的协议:客户端访问WEB服务器上某个WEB页面都要建立独立的连接,服务器不保留前一次访问的信息。服务器不保留客户机的状态信息。所以服务器需要采取一定措施保留用户状态数据。u 消息格式:三个部分:起始行,题头域,一个空行后的消息体POST /certify /1.1 POST方法, 版本号Host:172.23.77.94 主机地址Content-Type: text/xml 消息容的类型Content-Length:16 消息容的长度Hello,IBM World 消息体1) 起始行:包含 方法(GET,POST),URI, 版本号例如:GET
3、/default.html /1.0无效的URI请求返回错误代码(404),如是指向生成数据的资源,servlet,数据在响应消息中返回。递交表单用POST方法,GET方法向服务器请求资源由URI指示请求地址2) 消息-题头域名称目的举例Accept可接受的媒体类型如没有,则假设客户端可接受所有的媒体Accept:image/gifAccept:image/jpegAccept-Language客户端希望响应优先使用的语言Accept-Language:en-usContent-type发送到接受者的消息题的媒介类型Content-type:text/htmlHost所请求资源的主机名称和端口
4、号User-Agent包含发出请求消息的客户端的信息User-Agent:Mozilla/4.0u 响应消息包含状态行+0个或多个题头域 /1.1 200 OK 版本号, 响应状态码,成功响应Content-Type:text/plainContent-Length;25Welcome to the IBM World!常见的 响应状态码:200 OK 请求成功400 不良请求 由于语法错误而导致服务器无法理解请求信息401 未授权 请求要求身份验证和或授权404 为发现 服务器未发现与请求URI匹配的容500 部服务器错误 服务器出错,无法处理请求u WEB应用程序发展静态Client se
5、rverWeb browser requestWEB SERVER Response File Systemu WEB应用程序发展-AppletClient network serverWEB Browser RequestWith JVMWEB Server Response File Systemu WEB应用程序发展-ServletClient server RequestWeb BrowserWeb Server Plugin Requests for static resource Requests for dynamic resource ResponseWeb ServerWeb
6、 ContainerFile SystemServlet是运行在服务器上的WEB Container中的,WEB容器,WEB应用服务器提供WEB Container,用于管理Servlet这样的服务器端组件。带来问题: Servlet会把业务逻辑和显示逻辑混合在一起u WEB应用程序发展-JSP Web ContainerRequest service(req, res) method() Servlet JavaBeanReponse forward(req,res)RequestDispatcher methods() Service(req,res)Java Server PageJSP
7、实现更好的MVC结构,分离视图、控制和业务逻辑JSP页面显示给用户的数据,Servlet控制页面的流程,JSP和Servlet调用JavaBeanu WEB应用程序发展-EWeb WebBrowser Server Container E Container Java ApplicationE是Enterprise JavaBean,提供了对业务逻辑封装。JavaBean可以通过WebContainer来访问E,JAVA应用程序客户端也可以访问E。u Web应用程序中的服务器端技术-ASPASP是具有嵌代码的网页,网页中加入VBScript或JavaScript程序代码,在服务器端执行,VBS
8、cript代码被ASP引擎解释执行 u Web应用程序中的服务器端技术ASP.NET页面表现与代码分离,能使用多种语言,VB.NET和C#,ASP.NET程序是编译u Web应用程序中的服务器端技术执行-JSP使用JAVA语言,在HTML代码中混合程序代码,由语言引擎执行程序代码JSP被编译成Servlet并有JAVA虚拟机执行,这种编译操作仅在对JSP页面的第一次请求时发生。第二章 J2EE简介2J2EE架构模式521J2EE构建企业级应用922MVC设计模式923J2EE Blueprints524J2EE的组件和容器525J2EE的标准服务526J2EE的特性和优势527J2EE打包与部
9、署921J2EE构建企业级应用9目的在于克服C/S架构的弊端,采纳B/S架构来构建应用J2EE为JAVA技术开发服务器端应用提供了一个平台独立的,可移植的,多用户的,安全的和基于标准的企业级平台,从而简化了企业应用的开发、部署和管理。企业级应用:指那些为商业组织、大型企业而创建并部署的解决方案和应用。企业级应用特点与需求: 结构复杂,涉与外部资源多,事务密集,数据量大,用户数多,安全性高。需求:高可用性、安全性、可依赖性和可扩展性。22MVC设计模式9Model 模型, View视图 , Controller 控制器Model提供应用业务逻辑,指对业务数据、信息的处理模块,包括对业务数据的存取
10、、加工、综合等。View指用户界面:用户与程序交互的接口,用户可以通过View输入信息,另一方面程序通过View将数据结果以某种形式显示给用户。Controller负责view和model之间的流程控制。MVC的优势:三层分离有利于项目小组按小组成员各自的擅长进行分工控制部分代码相对稳定,业务逻辑跟随商业流程的变化而变化,视图模块根据用户需求更改而更改,有利于代码修改过程中进行模块的分离。在J2EE中,E提供应用业务逻辑,实现Model,HTML,JSP实现用户界面,VIEW。Servlet实现控制器。J2EE Blueprints(J2EE应用设计模型)体系模型是开发人员设计和优化J2EE组
11、件的基本原则,同时为围绕开发工作进行职能分工给出了指导性策略,以帮助应用开发人员合理地分配技术资源。J2EE是JAVA技术构建多层次企业级应用的一系列标准。不是现成的产品,各平台开发商按照J2EE规分别开发了不同的J2EE应用服务器,以与开发J2EE企业级应用的IDE工具。u IBM的J2EE产品IBM的J2EE应用服务器就是WAS(WebSphere Application Server)4.0版本符合J2EE1.2规,5.0版本符合J2EE1.3规。开发J2EE企业级应用的工具就是WSAD(Websphere Studio Application Developer),5.0版本J2EE容
12、器包括: Web容器 服务器端容器,包括两种组件JSP和Servlet,JSP和Servlet都是Web服务器的功能扩展,接受Web请求,返回动态的Web页面。Web容器中的组件可使用E容器中的组件完成复杂的商务逻辑。 E容器 服务器端容器,包含的组件为E(Enterprise JavaBeans),它是J2EE的核心之一,主要用于服务器端的商业逻辑的实现。E规定义了一个开发和部署分布式商业逻辑的框架,以简化企业级应用的开发,使其较容易地具备可伸缩性、可移植性、分布式事务处理、多用户和安全性等。Applet容器 客户端容器,包含的组件为Applet。Applet是嵌在浏览器中的一种轻量级客户端
13、,一般而言,仅当使用Web页面无法充分地表现数据或应用界面的时候,才使用它。Applet是一种替代Web页面的手段,我们仅能够使用J2SE开发Applet,Applet无法使用J2EE的各种Service和API,这是为了安全性的考虑。Application Client容器客户端容器,包含的组件为Application Client。Application Client相对Applet而言是一种较重量级的客户端,它能够使用J2EE的大多数Service和API。通过这四个容器,J2EE能够灵活地实现前面描述的企业级应用的架构。在View部分,J2EE提供了三种手段:Web容器中的JSP(或S
14、ervlet)、Applet和ApplicationClient,分别能够实现面向浏览器的数据表现和面向桌面应用的数据表现。Web容器中的Servlet是实现Controller部分业务流程控制的主要手段;而E则主要针对Model部分的业务逻辑实现。至于与各种企业资源和企业级应用相连接,则是依靠J2EE的各种服务和API。在J2EE的各种服务和API中,JDBC和JCA用于企业资源(各种企业信息系统和数据库等)的连接,JAX-RPC、JAXR和SAAJ则是实现Web Services和Web Services连接的基本支持。J2EE的各种组件我们就J2EE的各种组件、服务和API,进行更加详细
15、的阐述,看看在开发不同类型的企业级应用时,根据各自需求和目标的不同,应当如何灵活使用并组合不同的组件和服务。 ServletServlet是Java平台上的CGI技术。Servlet在服务器端运行,动态地生成Web页面。与传统的CGI和许多其它类似CGI的技术相比,Java Servlet具有更高的效率并更容易使用。对于Servlet,重复的请求不会导致同一程序的多次,它是依靠线程的方式来支持并发访问的。 JSPJSP(Java Server Page)是一种实现普通静态HTML和动态页面输出混合编码的技术。从这一点来看,非常类似Microsoft ASP、PHP等技术。借助形式上的容和外观表
16、现的分离,Web页面制作的任务可以比较方便地划分给页面设计人员和程序员,并方便地通过JSP来合成。在运行时态,JSP将会被首先转换成Servlet,并以Servlet的形态编译运行,因此它的效率和功能与Servlet相比没有差别,一样具有很高的效率。 EE定义了一组可重用的组件:Enterprise Beans。开发人员可以利用这些组件,像搭积木一样建立分布式应用。在装配组件时,所有的Enterprise Beans都需要配置到E服务器(一般的Weblogic、WebSphere等J2EE应用服务器都是E服务器)中。E服务器作为容器和低层平台的桥梁管理着E容器,并向该容器提供访问系统服务的能力
17、。所有的E实例都运行在E容器中。E容器提供了系统级的服务,控制了E的生命周期。E容器为它的开发人员代管了诸如安全性、远程连接、生命周期管理与事务管理等技术环节,简化了商业逻辑的开发。E中定义了三种Enterprise Beans: Session Beans Entity Beans Message-driven Beans JDBCJDBC(Java Database Connectivity,Java数据库连接)API是一个标准SQL(Structured Query Language,结构化查询语言)数据库访问接口,它使数据库开发人员能够用标准Java API编写数据库应用程序。JDBC
18、 API主要用来连接数据库和直接调用SQL命令执行各种SQL语句。利用JDBC API可以执行一般的SQL语句、动态SQL语句与带IN和OUT参数的存储过程。Java中的JDBC相当与Microsoft平台中的ODBC(Open Database Connectivity)。 JMSJMS(Java Message Service,Java消息服务)是一组Java应用接口,它提供创建、发送、接收、读取消息的服务。JMS API定义了一组公共的应用程序接口和相应语法,使得Java应用能够和各种消息中间件进行通信,这些消息中间件包括IBM MQ-Series、Microsoft MSMQ与纯Jav
19、a的SonicMQ。通过使用JMS API,开发人员无需掌握不同消息产品的使用方法,也可以使用统一的JMS API来操纵各种消息中间件。通过使用JMS,能够最大限度地提升消息应用的可移植性。 JMS既支持点对点的消息通信,也支持发布/订阅式的消息通信。 JNDI由于J2EE应用程序组件一般分布在不同的机器上,所以需要一种机制以便于组件客户使用者查找和引用组件与资源。在J2EE体系中,使用JNDI(Java Naming and Directory Interface)定位各种对象,这些对象包括E、数据库驱动、JDBC数据源与消息连接等。JNDI API为应用程序提供了一个统一的接口来完成标准的
20、目录操作,如通过对象属性来查找和定位该对象。由于JNDI是独立于目录协议的,应用还可以使用JNDI访问各种特定的目录服务,如LDAP、NDS和DNS等。 JTAJTA(Java Transaction API)提供了J2EE中处理事务的标准接口,它支持事务的开始、回滚和提交。同时在一般的J2EE平台上,总提供一个JTS(Java Transaction Service)作为标准的事务处理服务,开发人员可以使用JTA来使用JTS。 JCAJCA(J2EE Connector Architecture)是J2EE体系架构的一部分,为开发人员提供了一套连接各种企业信息系统(EIS,包括ERP、SCM
21、、CRM等)的体系架构,对于EIS开发商而言,它们只需要开发一套基于JCA的EIS连接适配器,开发人员就能够在任何的J2EE应用服务器中连接并使用它。基于JCA的连接适配器的实现,需要涉与J2EE中的事务管理、安全管理与连接管理等服务组件。 JMXJMX(Java Management Extensions)的前身是JMAPI。JMX致力于解决分布式系统管理的问题。JMX是一种应用编程接口、可扩展对象和方法的集合体,可以跨越各种异构操作系统平台、系统体系结构和网络传输协议,开发无缝集成的面向系统、网络和服务的管理应用。JMX是一个完整的网络管理应用程序开发环境,它同时提供了厂商需要收集的完整的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 JAVA WEB 应用 开发 教程
限制150内