《第一章J2EE简介》由会员分享,可在线阅读,更多相关《第一章J2EE简介(32页珍藏版)》请在金锄头文库上搜索。
1、第一章第一章 J2EE简介简介企业级应用程序规范企业级应用程序开发平台企业级应用程序技术构架概要概要1.1 传统应用程序模型传统应用程序模型1.2 分布式多层应用程序分布式多层应用程序1.3 J2EE 容器容器1.4 J2EE 核心技术核心技术1.5 开发、封装和部署开发、封装和部署 J2EE 应用程序应用程序1.6 J2EE 的优势的优势1.1 传统应用程序模型传统应用程序模型lC/S 模型 C - Client S - ServerlB/S 模型 B Browser S - Server C/S 模型模型lC/S模型从本质上讲是一种软件结构,三种逻辑成分:l表示逻辑l业务处理逻辑l数据管理
2、逻辑。 (1) (2) (3)C/S模型的缺陷模型的缺陷l系统维护困难l系统的性能随用户数的增加而下降l系统的安全性差l系统的伸缩性差l客户机负载过重B/S模型模型l表示逻辑、业务处理逻辑和数据处理逻辑集中。优势优势&劣势劣势l优势:维护和升级方式简单。成本降低,选择更多。不限制客户平台,客户端统一采用浏览器即可运行全部的模块。l劣势:应用服务器运行数据负荷较重1.2 分布式多层应用程序模型分布式多层应用程序模型J2EE组件组件lJ2EE 组件是一个包含一定功能的软件单元,它有相关的类和文件一起组成,并与其他组件进行通信lJ2EE 应用程序由许多不同的组件组成J2EE客户端客户端lWeb 客户
3、端客户端lApplets(客户端小应用程序(客户端小应用程序 )lApplication 客户端客户端Web 客户端l由两部分组成: (1)由运行在Web层的Web组件生成的包含各种标记语言(HTML、XML等等) 的动态Web页面 交互性、自动更新、因时因人而变 (2)接接收收从从服服务务器器传传送送来来的的页页面面并并将将它它显显示示出出来来的的Web浏览器浏览器l一般是瘦客户端 (不做数据库查询、执行复杂的商业规则及连接传统应用程序这样的操作)。 Appletsl从Web层接收的一个Web页面可以包含内嵌的applet l一个applet是一个用Java编程语言编写的小的客户端应用程序,
4、它在安装在Web浏览器中的Java虚拟机中运行 l为了在Web浏览器中成功地运行applet,客户端系统很可能需要Java插件和安全策略文件 应用程序客户端l一个J2EE应用程序客户端运行在客户端机器上l使用户可以处理需要比标记语言所能提供的更丰富的用户界面的任务 l典型的用Swing或抽象窗口工具包(AWT)API建立的图形用户界面(GUI),但是一个命令行界面也是可能的l应用程序客户端可直接访问运行在商业层的EJB Web组件组件l既可以是servlet也可以是JSP页面。lServlets是一个Java类,它可以动态地处理请求并作出响应。lJSP页面是一个基于文本的文档,它以servle
5、t的方式执行,但是它可以更方便建立静态内容。 l静态的HTML页面、applet、服务器端的功能类并不被J2EE规范视为Web组件。Web 组件组件(cont.)Business组件组件l由运行在业务层的enterprise beans(EJB)处理 l有三种类型的 enterprise beans(EJB): 会话beans, 实体beans, and 消息驱动beansEIS层层l企业信息系统层处理企业信息系统软件并包含诸如企业资源计划(ERP)、主机事务处理、数据库系统和其它传统系统这样的底层系统。lJ2EE应用程序组件可能需要访问企业信息系统,例如获得一个数据库连接。1.3 J2EE
6、容器l容器为 J2EE 应用程序组件提供了运行时支持l容器充当组件与支持组件的底层特定于平台的功能之间的接口lJ2EE服务器以容器的形式为每一个组件类型提供底层服务(如事务处理、状态管理、多线程、资源池等容器服务容器服务l容器是一个组件和支持组件的底层平台特定功能之间的接口,在一个Web组件、enterprise bean或者是一个应用程序客户端组件可以被执行前,它们必须被装配到一个J2EE应用程序中,并且部署到它们的容器。l装配的过程包括为J2EE应用程序中的每一个组件以及J2EE应用程序本身指定容器的设置。容器设置定制了由J2EE服务器提供的底层支持,这将包括诸如安全性、事务管理、Java
7、命名目录接口(JNDI)搜寻以及远程序连接。容器服务容器服务lJ2EE的安全性模式可以让你对一个Web组件或enterprise bean进行配置以使得只有授权用户访问系统资源。 lJ2EE的事务模式可以让你指定方法之间的关系以组成一个单个的事务,这样在一个事务中的所有方法将被视为一个单一的整体。 lJNDI搜寻服务为企业中的多种命名目录服务提供一个统一的接口,这使得应用程序组件可以访问命名目录服务。 lJ2EE远程连接模式管理客户端和enterprise bean之间的底层通信。在一个enterprise bean被建立后,客户端在调用其中的方法时就象这个enterprise bean就运行
8、在同一个虚拟机上一样。 容器服务容器服务lJ2EE体系结构提供了可配置的服务意味着在相同的J2EE应用程序中的应用程序组件根据其被部署在什么在地方在实际运行时会有所不同。l容器还管理诸如一个enterprise bean和servlet的生存周期、数据库连接资源池等不能配置的服务。 容器类型容器类型Applet 容器是用于管理 Applet 执行所必需的,其中,Web 浏览器和 Java 插件将一起在客户端上运行应用程序客户端容器是管理应用程序客户端组件执行所必需的Web 容器管理 J2EE 应用程序的 Servlet 和 JSP 页面的执行EJB容器是执行 J2EE 应用程序的 EJB 组件
9、所必需的1.4 J2EE核心技术lJava Servlet 技术技术lJava Server Pages 技术技术lJDBC 技术技术lJNDI 技术技术lEnterprise JavaBeans (EJB)技术)技术lJ2EE核心技术1EJB技术技术企业 Bean 包含有业务逻辑代码。代码包含实现业务逻辑的方法和字段Java Servlet 技术技术Servlet 是驻留在服务器上的 Java 类,用于响应通过 HTTP 传入的请求JSP技术技术Java 服务器页面允许程序员将 Servlet 代码写入基于文本的文档中。这些页面与 HTML 页面类似,只是它们还含有 Java 代码JDBC
10、APIJDBC API 有助于从使用 Java 编程语言编写的方法之中执行 SQL 命令。当默认容器管理持续性被覆盖时,或者在使用会话 bean 访问数据库时,可在企业 bean 中使用 JDBC APIJ2EE核心技术2Java 邮件邮件 APIJ2EE 应用程序用 Java Mail API 发送电子邮件通知。通过分别使用消息传送和消息存储对象,它实现了电子邮件的发送和检索用于用于 XML 处理处理的的 Java APIJAXP 用 Document Object Model(DOM,文档对象模型)、Simple API for XML(SAXP,用于 XML 的简单 API)和 Exte
11、nsible Stylesheet Language Transformation(XSLT,可扩展样式单语言转换)对 XML 文档进行操作。JAXP 允许应用程序独立地解析并转换 XML 文档而不使用任何 XML 处理过程引擎用于基于用于基于 XML 的的 RPC 的的 Java API要启用客户端程序以便通过 Internet 进行基于 XML 的远程过程调用),Java API for XML-based RPC(JAX-RPC,用于基于XML 的 RPC 的 Java API)要使用 SOAP 标准和 HTTP用于用于 Java 的带的带有附件有附件 API 的的 SOAPJAX-RP
12、C 取决于用于 Java 的带有附件 API 的 SOAP (SAAJ)。SAAJ 是低层的 API,有助于创建并检索符合 SOAP 1.1 规范的消息J2EE核心技术3Java 事务处事务处理理 APIJava Transaction API(JTA,Java 事务处理 API)提供了用于分隔事务处理的接口。对于要提交或回滚的事务处理,J2EE 会通过向自动执行字段提供默认为真的值来进行处理Java 命名和命名和目录接口目录接口Java 命名和目录接口 (JNDI) 提供命名和目录服务。它允许应用程序执行标准的目录操作,如将属性与对象相关联以及基于属性的对象搜索属性1.5 开发、封装和部署开
13、发、封装和部署 J2EE 应用程序应用程序l开发环境搭建操作系统平台的选择操作系统平台的选择( Windows NT/2000/XP RedHat、Sun Solaris、.)应用服务器的选择应用服务器的选择( JBoss 、tomcat、 WebLogic、 WebSphere 、Sun One、Apusic.)数据库服务器的选择数据库服务器的选择(MySQL、Sql Server、Oracle.)开发工具的选择开发工具的选择( MyEclipse、NetBeans、JBuilder、IBM WebSphere Studio Application Develop WSAD 、WebLogi
14、c Workshop)l开发环境搭建向导封装和部署封装和部署 J2EE 应用程序应用程序开发各J2EE组件组件开发后,往往需要和它们的部署描述符封装在一起J2EE应用程序的最后封装阶段,并将前一阶段中创建的企业 bean (.jar) 和 Web 组件 (.war) 汇编成 J2EE (.ear) 应用程序将应用程序部署到应用服务器上EJB 构建和源目录构建和源目录应用程序开发生命周期应用程序开发生命周期开发角色开发角色1lJ2EE 封装和部署过程包括三个不同的开发角色应用程序组件提供者应用程序汇编者部署者开发角色开发角色2l应用程序组件提供者:l应用程序汇编者:应用程序汇编者接过应用程序提供
15、者开发的一组组件,并将它们汇编成完整的 J2EE 应用程序。它们执行的主要任务是:l部署者:部署者,特定于操作环境的专家,负责将 J2EE 组件和应用程序部署到该环境中。部署应用程序涉及两个任务q 企业 Bean 开发者q Web 组件开发者q 应用程序客户端开发者q 将 EJB JAR 和 WAR 文件汇编成 J2EE 应用程序 EAR 文件q 指定 J2EE 应用程序的部署描述符q 验证 EAR 文件的内容是否符合 J2EE 规范q 安装配置 部署者必须安装 J2EE 服务器及配置相关环境,解决所有的外部相关性q 部署 部署者必须部署应用程序及相关组件参考文档参考文档lJ2EE 1-4 Tutorial.pdf 概述 p1-10J2EE容器 p8-10J2EE 核心技术 p18-24补充内容补充内容lWeb应用程序简介lHttp协议简介