资源预览内容
第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
亲,该文档总共7页全部预览完了,如果喜欢就下载吧!
资源描述
J2EE 理解 和EJBJ2EESun 平台和规范J2EE有几十种技术!平台WIN32-WIN32的中间组件是COM+,可是现在WIN32不用了!COM+也不用了!Micrososft 为了和Sun竞争出了个.NET,.NET的中间组件也是COM+,和COM+服务器全是自己的东西!COM+装起来麻烦的很!不过COM+没什么人了!都盼望它能出个比COM+还好的中间组件!Microsoft 说你们可以不要中间组件!这话也说不过去!说在等一年!J2EEJ2EE的中间组件是EJB。EJB的服务器:Bea WEB Logic JAVA语言的特征:1 跨平台2 面向对象3 免费Rml是远程方法调用协议!EJB 是会话Bean(逻辑)和实体Bean(数据)i J2EE是一种规范,为软件开发生命周期制定了许多规则,使编码标准化 ,包括: 设计企业应用 把角色分配给与开发软件(规划与产品)有关的人 应用打包 把用于J2EE的技术标准化 把不同的技术之间的交互标准化 为Java应用服务器提供了一个标准 J2EE技术简介i 客户端技术 包括Java applets和客户端应用程序。(这些也包括HTML和XML文件) i 组件技术 被用来创建商业组件,这是应用最重要的部分。包括三种技术: Servlets、JSP和EJB i 服务技术 提供必要的支持,确保组件能发挥充分作用 i 通信技术 HTTP、HTTPS、RMI等组件技术 i 组件在J2EE规范中有更广泛的含义组件是应用级的可重用单元 i 一个符合J2EE规范的产品必须支持四种类型的组件: 客户端应用般的胖客户端Java应用,使用RMI(远程方法调用)访问应用服务器 Applets可视化客户端,在网络浏览器之内执行 Servlets和JSP允许开发者扩展网络服务器的功能,使在HTML 、XML和其它网络语言中,加入动态的内容成为可能 Enterprise JavaBeans在应用服务器的容器中执行的组件。EJB为高度专门化的业务逻辑组件提供了格式,它运行于服务器端,封装和管理商业逻辑,避免应用程序开发人员考虑系统级问题组件技术EJB简介i EJB结构是一种分布式的组件模型,用来开发安全的、可扩展的、事务性的、多用户的组件 i EJB是一些包含业务逻辑的可重用的软件单元 i EJB允许把应用逻辑从系统级服务中分离出来,让开发者的精力集中在商业领域的问题上,而不是系统级的程序设计上 i EJB有两种形式:会话Bean和实体Bean 组件技术容器简介i 容器是一种J2EE运行时组件,它管理不同的应用组件,并且允许对J2EE API的访问 i 每个组件都活在容器里,容器为组件提供运行时服务 i 容器执行下述的任务: 装载组件 提供事务服务 提供安全管理 提供对必要环境变量的访问 对象实例池 管理状态 i 在J2EE体系中,有不同类型的容器: applet容器 客户应用容器 Web容器 :装载JSP和Servlet应用组件,这些组件实现了Web客户需要的功能 EJB容器 :装载实体Bean 、有状态Bean 、无状态Bean 、消息Bean J2EE容器的体系结构可以分成四个部分: 组件约定 :为了让组件能够在容器运行环境中被管理,应用组件必须遵守容器定义的某种约定 容器服务API :J2EE平台规范定义了一套每个具体的J2EE平台都必须支持的Java标准扩展接口。Java容器提供了服务级的API抽象 声明服务 :具体的实现方式称为部署。部署定义了容器和组件之间的结构约定,要为每组应用组件定义一个部署 其它的容器服务。例如,对组件生命周期的管理、集群技术等 组件技术EJB容器简介i 编写EJB组件的主要目的就是为了利用EJB容器所提供的服务。EJB容器提供的服务包括: 持续化 声明性事务 数据缓存 声明性安全性 错误处理 业务逻辑的组件框架 伸缩性与错误修复 可移植性 可管理性 服务技术 i 服务技术包含下述内容: JDBC :JDBC 2.x应用程序接口包括两部分2.x核心应用程序接口( java.sql包)和JDBC 2.x可选的应用程序接口包( javax.sql包) Java事务API(JTA)和服务 Java名字和目录接口,简称JNDI,提供了名字服务。名字服务把一个名称与一个对象相联系,这样客户能使用指定的名称定位对象 JNDI 寻址(JNDI Lookup)服务JNDI 寻址(JNDI Lookup)服务向企业内的多重名字和目录服务提供了一个统一的接口,这样应用程序组件可以访问名字和目录服务。服务技术 i 服务技术包含下述内容: JDBC :JDBC 2.x应用程序接口包括两部分2.x核心应用程序接口( java.sql包)和JDBC 2.x可选的应用程序接口包( javax.sql包) Java事务API(JTA)和服务 Java名字和目录接口,简称JNDI,提供了名字服务。名字服务把一个名称与一个对象相联系,这样客户能使用指定的名称定位对象 通信技术 i 通信技术使得J2EE应用中的组件和服务彼此通信,它是重要的组成部分 : Internet协议。主要指TCP/IP协议族 HTTP协议 当传送重要信息时,则需要使用安全套接字协议(SSL),它将数据加密后在网络上传送 远程对象协议。主要用于分布式应用中,这时组件分散在多个服务器上,彼此之间采用远程对象协议来通信 。包括:RMI 、RMI-IIOP 、Java接口定义语言,即IDL 、JMS 、JavaMail i J2EE平台通过不同的方式与外界通信,可分为: 应用程序接口。定义了应用组件和J2EE平台之间的接口 网络协议。一般采用HTTP(或者HTTPS)、RMI和外界应用交互 部署描述。采用XML语言,描述J2EE应用的行为和配置,描述每个模块和应用怎样部署 J2EE的N层体系结构 i J2EE是分层体系,分为许多功能层 i 理想的J2EE体系包括六个层:表示、应用、服务、域、连通性和持续化。i 这些层物理上横跨客户机和服务器,而他们逻辑上划分为Web容器、EJB容器和数据库 J2EE的N层体系结构(续)i 表示层被划分成两个部分: 客户端层:管理与用户的输入输出交互作用。该层提供HTML,表示应用数据 。J2EE还支持诸如applets,独立应用或者CORBA客户等其他类型的客户 服务器端层 :服务器端表达层包括JSP。JSP被用来产生Web的动态内容。这层把应用数据以网页的形式呈献给浏览器。然后数据按照在JSP中开发的预定的方式表示出来。这层也称为布局层 J2EE的N层体系结构(续)i 应用层 :是客户端表达层和服务层之间相互作用的中介 ,根据用户请求来调用服务 ,也称为逻辑层。 其主要的责任如下: 适应对域进行分布式的表示 从用户接口收集数据,解释数据并且发回数据 为表示层保持会话的状态 处理在服务激活期间发生的例外情况,在需要时提交给用户 应用层容器的责任是实例化必要的商业组件和表示组件,可以是Servlet或者JSP。在这一层上更倾向于Servlet。Servlets对HTTP会话的会话管理负责 J2EE的N层体系结构(续)i 服务层 :为商业使用案例和应用要求的有用操作提供应用程序接口。服务层可以是域模型的封装层。客户通过请求服务与应用的域模型交互,但是他们接触不到实际的域对象。有下述好处: 服务层的方法能对牵涉到多个域对象的事务处理负责 服务允许掩藏系统规划 掩藏规划,能在对象分布中提供更大的灵活性,进而改进性能 许多应用能共享一套服务 服务也提供一种十分高的杠杆作用测试点 J2EE的N层体系结构(续)i 具有良好的层次、健壮的服务层的体系为可行的、可扩展的J2EE应用形成基础。服务层由如下组成部分形成: 简单Bean 会话Bean 事务相关的组成部分 J2EE的N层体系结构(续)i 域层 :是应用的问题领域中抽象出来的模型。 商业规则和语法被嵌入在域层中的域对象中。它对加强商业规则和过程负责,新信息的语义检查也在域层进行 i 形成域层的组成部分是应用的真正模型,主要是实体Bean,它包含必要的商业逻辑J2EE的N层体系结构(续)i 连通性层 :提供了域对象与后台系统之间的连接,是对后台服务器的抽象,因此,应用/域模型能够重用,连接到不论是大型主机,或者是oracle上i 该层由JDBC、JNDI和Java连接器体系组成。Java连接器体系提供了对遗留系统的连接 J2EE的N层体系结构(续)i 持续化层 :提供了一种机制,能永久性的存储对象的状态。它提供基本的CRUD (create, read, update, delete)服务,也提供对象关系映射 i 持续化层可以是企业现存的管理系统(比如每天的销售额管理),也可以是数据库,或者是已经存储了数据的大型主机 J2EE体系结构的优点 i 根据J2EE规范,应用服务器必须提供如下服务: 安全框架 事务管理 名字和目录服务 持续化 集成和部署工具 消息服务 标准J2SE应用程序接口 J2EE体系结构的优点(续)i 可选的服务包括: 负载均衡 复制 数据库连接池 线程池 结果缓冲 J2EE体系结构的优点(续)i J2EE带来的好处是双向的,对于开发应用的公司和使用它的客户: 简化了体系和开发 集成现有的企业信息系统 提供可扩展性 安全机制 使用J2EE的场景 i 我们参照一下可以考虑实现J2EE的情景: 多层应用情景。Web容器装载Web组件,专门用来处理应用的表示逻辑。EJB容器用来装载应用组件。 独立的客户端应用情形。从J2EE应用模型的视野来看,我们给出三种类型的应用程序模型示例:EJB客户端直接与EJB服务器交互 、独立的Java应用程序客户端,它使用JDBC直接访问企业信息系统资源 。 以Web为中心的情景。Web容器加载表示逻辑和商业逻辑,假设使用JDBC来访问企业信息系统 J2EE安全(Security)模型J2EE安全(Security)模型可以让你配置 web 组件或enterprise bean ,这样只有被授权的用户才能访问系统资源. 每一客户属于一个特别的角色,而每个角色只允许激活特定的方法。你应在enterprise bean的布置描述中声明角色和可被激活的方法。由于这种声明性的方法,你不必编写加强安全性的规则。 J2EE 事务管理(Transaction Management)模型i J2EE 事务管理(Transaction Management)模型让你指定组成一个事务中所有方法间的关系,这样一个事务中的所有方法被当成一个单一的单元. 当客户端激活一个enterprise bean中的方法,容器介入一管理事务。因有容器管理事务,在enterprise bean中不必对事务的边界进行编码。要求控制
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号