JavaEEWeb应用开发基础-第1章-JavaEE概述.ppt
JAVA EE WEB应用开发基础,Java EE Web应用开发基础(电子工业出版社)杭州电子科技大学 俞东进 任祖杰,第1章:JAVA EE概述,Java EE规范简介Java EE平台主要内容Java EE应用服务器软件Java EE的相关角色Java EE应用软件的体系结构Java EE体系架构的优点思考题,JAVA EE规范简介,作为一个平台,Java EE指的是使用Java编程语言编写的应用程序的运行环境Java SE(Java Platform,Standard Edition):Java标准版Java EE(Java Platform,Enterprise Edition):Java企业版Java ME(Java Platform,Micro Edition):Java微型版Java EE不仅仅是指一种标准平台,更表达一种软件架构和设计思想,JAVA EE平台主要内容,Java EE平台是由一系列容器、应用组件和API服务所组成容器是指为各种应用组件提供API服务的Java EE运行时环境,可提供诸如目录服务、事务管理、安全性、资源缓冲池以及容错性等各种公共服务,包括:应用客户端容器、Applet容器、Web容器和EJB容器4种。,JAVA EE平台主要内容,Java EE平台是由一系列容器、应用组件和API服务所组成,JAVA EE平台主要内容,开发Java EE应用涉及的API服务(续)JDBC(Java Database Connectivity,Java数据库连接):一种用于执行SQL语句的Java API,可为访问不同的关系型数据库提供一种统一的途径。JNDI(Java Name and Directory Interface,Java命名和目录接口):JNDI被用于执行名字和目录服务。它提供了一致的模型来存取和操作企业级的资源,如DNS、LDAP、本地文件系统或应用服务器中的对象。RMI(Remote Method Invoke:远程方法调用):RMI定义了调用远程对象上的方法的标准接口。作为一种被EJB使用的更底层的协议,它通过使用序列化方式在客户端和服务器端传递数据。,JAVA EE平台主要内容,开发Java EE应用涉及的API服务(续)Java IDL/CORBA:Java IDL使得Java EE应用组件可通过IIOP协议调用外部的可用各种编程语言开发的CORBA对象,从而实现不同应用系统之间的集成。JMS(Java Message Service,Java消息服务):JMS是用于与消息中间件相互通信的应用程序接口。它既支持点对点的消息模型,也支持发布/订阅的消息模型。Java EE 6规范要求支持JMS 1.1规范(JSR 914)。,JAVA EE平台主要内容,开发Java EE应用时涉及到的API服务(续)JTA(Java Transaction Architecture:Java事务架构)定义了面向分布式事务服务的标准API,可支持事务范围的界定、事务的提交和回滚。JavaMail:JavaMail用于存取邮件服务器的API,提供了一套可访问邮件服务器的抽象类。JAF(JavaBeans Activation Framework:JavaBeans激活框架):JavaMail利用JAF来处理MIME编码的邮件附件。通过JAF,MIME的字节流可以被转换成Java对象,或者转换自Java对象。,JAVA EE平台主要内容,开发Java EE应用时涉及到的API服务(续)Web服务:Java EE平台通过多种技术提供了对Web服务的支持Java API for XML Web Services(JAX-WS)和Java API for XML-based RPC(JAX-RPC)可支持基于SOAP/HTTP的Web服务调用JAX-WS和Java Architecture for XML Binding(JAXB)定义了Java对象和XML数据之间的映射Java API for RESTful Web Services(JAX-RS)则提供了对REST风格的Web服务的支持,JAVA EE平台主要内容,开发基于Java EE平台的应用时经常需要涉及到的一些应用组件JSP(Java Server Pages):JSP页面由XHTML/HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求后对这些Java代码进行处理,然后将生成的XHTML/HTML页面返回给客户端的浏览器Java EE 6规范要求Web容器支持JSP 2.2规范(JSR 245)。,JAVA EE平台主要内容,开发基于Java EE平台的应用时经常需要涉及到的一些应用组件(续)Java Servlet:Servlet是一种小型的Java程序,它扩展了Web服务器的功能。作为一种服务器端的应用,当被请求时开始执行。Java EE 6规范要求Web容器支持Servlet 3.0规范(JSR 315)。,JAVA EE平台主要内容,开发基于Java EE平台的应用时经常需要涉及到的一些应用组件(续)EJB(Enterprise JavaBean:企业JavaBean):EJB 定义了一个用于开发基于组件的、企业级的、分布式多层应用系统的标准。基于该标准开发的企业Java Bean封装了应用系统中的核心业务逻辑Java EE 6规范要求EJB容器支持EJB 3.1规范(JSR 318)。,JAVA EE应用服务器软件,实现了Java EE规范的服务器软件称为Java EE应用服务器软件。运行于Java EE应用服务器软件之上的应用软件称为Java EE应用软件。一次开发、到处运行,JAVA EE应用服务器软件,主流的Java EE应用服务器软件IBM WebSphere Application Server(WAS)JBOSSWebLogicApusicTomcatOracle GlassFish ServerApache Geronimo,JAVA EE相关角色,Java EE应用服务器开发者:开发符合Java EE规范的应用服务器软件,这些软件包括了组件容器、Java EE API的实现,等。Java EE应用软件开发者:开发、组装和部署基于Java EE应用服务器软件的应用软件。Java EE应用系统管理员:配置、监控和管理Java EE应用系统的技术人员。,JAVA EE应用软件的体系结构,Java EE应用软件的典型四层结构,JAVA EE应用软件的体系结构,Java EE应用软件的典型四层结构运行在客户端机器上的客户层:负责与用户直接交互。Java EE支持多种客户端,可以是Web浏览器,也可以是专用的Java客户端;运行在Java EE服务器上的表示层:该层可以是基于Web的应用服务,利用Java EE中的JSP与Servlet技术,响应客户端的请求,并可向后访问业务逻辑组件;,JAVA EE应用软件的体系结构,Java EE应用软件的典型四层结构(续)运行在Java EE服务器上的业务逻辑层组件:主要封装了业务逻辑,完成复杂计算,提供事务处理、负载均衡、安全、资源连接等各种基本服务。运行在EIS(Enterprise Information System)层服务器上的企业信息系统:该层包括了企业现有系统(数据库系统,文件系统等)。Java EE提供了多种技术以访问这些系统。,JAVA EE体系结构优点,部署代价廉价提供中间层集成框架以满足无需太多费用而又需要高可用性、高可靠性和可扩展性的应用的需求。降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持保留现存的IT资产可以充分利用用户原有的投资,如一些公司使用的BEA Tuxedo、IBM CICS、IBM Encina、Inprise VisiBroker以及Netscape Application Server,JAVA EE体系结构优点,高效的开发允许公司把一些通用的、很繁琐的服务端任务交给中间件供应商去完成。这样开发人员可以集中精力在如何创建商业逻辑上,从而可大大缩短开发时间中间件供应商一般提供以下中间件服务状态管理服务持续性服务分布式共享数据对象CACHE服务,JAVA EE体系结构优点,支持异构环境基于Java EE的应用程序不依赖任何特定操作系统、中间件、硬件。基于Java EE的程序只需开发一次就可部署到各种平台Java EE标准允许客户订购与Java EE兼容的第三方的现成的组件,把它们部署到异构环境中可伸缩性Java EE平台提供了广泛的负载平衡策略,能消除系统中的瓶颈,允许多台服务器集成部署。这种部署可达数千个处理器,从而实现高度可伸缩,思考题,请区分什么是Java EE平台、Java EE应用服务器软件、Java EE应用软件。使用Java EE平台开发应用软件,有什么优势?请列举一些基于Java EE平台开发时经常需要涉及到的一些核心应用组件和API服务。Java EE应用软件的分层模型包括哪几个部分?每个部分承担什么样的职责?,