资源预览内容
第1页 / 共33页
第2页 / 共33页
第3页 / 共33页
第4页 / 共33页
第5页 / 共33页
第6页 / 共33页
第7页 / 共33页
第8页 / 共33页
第9页 / 共33页
第10页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第一章第一章EJB原理与运行环境原理与运行环境 课程内容课程内容EJB概述传统EJB同新一代EJB的对比 EJB3.0开发运行环境和配置 运行一个简单的EJB3.0的例子 JBoss服务器详细介绍 JBoss服务的部署 EJB概述概述 EJB(Enterprise Java Bean,企业Java Bean)是基于Java的服务器端组件框架技术。借助于它,开发者能够轻松构建企业级、分布式组件应用 EJB组件分为以下几种不同的类型,依据应用设计的不同,开发者可以选用适合应用的组件类型。 会话会话Bean消息驱动消息驱动Bean 实体实体Bean 企业企业Java Bean 概述概述EJB 基础知识基础知识在EJB 中主要定义了4种类型的EJB1.无状态会话Bean Stateless Session Bean2.有状态会话Bean State Session Bean3.实体Bean Entity Bean4.消息驱动Bean Message-Driver Bean这4种EJB是Sun根据大量实践提出的框架模型Stateless Session Bean主要用于提供直接调用的逻辑功能实现和功能接口State Session Bean主要提供调用过程中保存客户会话状态的逻辑功能实现和功能接口Entity Bean 为对象的状态持久化提供了面向对象的映射MessageDriver Bean 提供了基于客户程序发出消息,服务程序异步处理消息的方式工作。EJB 基础知识基础知识EJB 角色角色EJB规范定义了六种EJB开发和部署中涉及的角色 企业Bean提供者 (Enterprise Bean Provider)负责EJB 开发,Home接口 ,Remote接口,Logic Bean 应用程序汇编人员 (Application Assembler)负责编写EJB 调用客户端,如:JSP/Servlet ,Desktop Client 部署人员 (Deployers)部署安装整个应用程序 系统管理员 (System Administrator)系统管理和维护 EJB 服务器供应商 (EJB Server Provider)负责开发EJB应用程序的开发,如:WebLogic,WebSphere EJB容器供应商 (EJB Container Provider)提供部署EJB的运行环境,以及相关工具,通常EJB容器都绑在Server一起发布开发过程开发过程企业企业Bean技术技术 到目前为止,EJB框架仅支持Java语言,这不同于支持多种语言的.NET框架。从表面上看,这好像不利于EJB技术的应用,但是开发者应该知道Java是最适合构建分布式组件的语言之一,理由如下:(1)接口同实现分离)接口同实现分离 (2)线程安全、应用安全)线程安全、应用安全 (3)跨平台性)跨平台性 传统的传统的EJB与新一代的与新一代的EJB 下面我们来看一下传统的EJB与新一代的EJB之间的区别 1传统的传统的EJB Bean类,类,它是EJB组件的主要实现。 EJB对象,对象,客户根本不能够直接调用EJB实例 。远程接口远程接口 ,这些接口中的方法会暴露给远程客户 。本地接口本地接口 ,这些接口中的方法会暴露给本地客户。 Home接口接口 ,Home接口定义了用于创建、销毁、查找本地(或远程)EJB对象的若干方法 EJB 功能功能2新一代的新一代的EJB EJB3.0则简化了则简化了EJB组件的开发过程,改变了组件的开发过程,改变了EJB的编程模型,的编程模型,但是要清楚的是但是要清楚的是EJB技术本身并没有因此而变味,它仍然是服务器端技术本身并没有因此而变味,它仍然是服务器端软件组件框架。软件组件框架。EJB3.0变化的只是开发和部署模型,而它的核心框架变化的只是开发和部署模型,而它的核心框架和架构原理并没有改变。和架构原理并没有改变。 EJB3.0实现了以下几个方面:实现了以下几个方面: (1)不再需要)不再需要Home接口和对象接口接口和对象接口 (2)不再需要组件接口)不再需要组件接口 (3)使用)使用Java元数据注释元数据注释 EJB3.0开发运行环境配置开发运行环境配置 为了辅助和加快EJB应用的开发和部署,开发者需要选用适合自身的EJB开发工具。其中有商用的开发环境,也有Open Source的开发环境。如Boland JBuilder、BEA WebLogic WorkShop、IBM WebSphere Stdio Application Developer、NetBeans、Eclipse 等等。另外还存在其他类型的EJB工具,它们使得开发者能够快速、成功的开发出EJB应用。比如,使用JUnit完成测试工作,使用Ant/XDoclet构建EJB项目、使用Borland OptimizeIt或是Quest SoftWare提供的JProbe完成性能分析等等。下载与安装工具下载与安装工具 1下载软件下载软件 下载安装下载安装JDK5.0。下载安装下载安装eclipse3.2.x。下载安装下载安装JBoss-4.0.4.GA 服务器服务器 下载插件下载插件JBoss IDE 2.0。下载安装下载安装MyEclipse5.5.0 GA。2 2安装软件说明安装软件说明以以JBoss-4.0.4GA服务器为例,讲解服务器为例,讲解JBoss工具的安装工具的安装 (1)打开下载的)打开下载的JBoss安装程序,进入安装界面,如图安装程序,进入安装界面,如图1-2所示所示 :图图1-2 JBoss的安装界面的安装界面(2)然后一直选择)然后一直选择“Next”按钮,并同意许可协议,直按钮,并同意许可协议,直到出现到出现“选择安装目录选择安装目录”的界面,如图的界面,如图1-3所示:所示:图1-3选择安装目安装目录 (3)在图)在图1-3中选择要安装的目录,此处我们以默认的目中选择要安装的目录,此处我们以默认的目录作为安装路径,之后选择录作为安装路径,之后选择“Next”按钮,出现如图按钮,出现如图1-4所所示的界面,这里要选择一个安装类型,此处我们选择示的界面,这里要选择一个安装类型,此处我们选择“Ejb3-clustered”安装选项。安装选项。图图1-4 选择安装类型选择安装类型(4)此前,已经安装好)此前,已经安装好JDK 5.0。所以,继续选择。所以,继续选择“Next”,一直都可以是默认的设置,直到出现以下安装界面,如图,一直都可以是默认的设置,直到出现以下安装界面,如图1-5所示:所示: 图图1-5安装配置安装配置(5)在图)在图1-5所示的界面中,将四个选项都选上,然后点所示的界面中,将四个选项都选上,然后点击击“Next”按钮,即开始安装按钮,即开始安装JBoss,如图,如图1-6所示:所示: 图1-6 安装安装进行中行中 (6)安装完毕后,在系统变量里添加)安装完毕后,在系统变量里添加JBOSS_HOME变量,变量,变量值为变量值为JBoss的安装路径。如图的安装路径。如图1-7所示:所示: 图图1-7 新建系统变量对话框新建系统变量对话框启动启动JBoss “开始”“运行”,在运行窗口中输入“C:Program FilesJavaServerjboss-4.0.4.GAbinrun c-default”,这个命令是用来启动JBoss的。当然也可以进入到JBoss安装目录下的bin目录中选择ran.bat直接启动服务器 。 观察控制台上是否有Java的异常抛出,如果没有异常并看到最后输出:Started in XXs:XXms,“XX”是启动耗费的时间,则说明安装成功了 。运行一个运行一个EJB3.0的例子的例子 在源代码中的HelloWorld文件夹下找到HelloWorld.jar复制到“JBoss安装目录/server/default/deploy”目录下,之后再将EjbTest文件夹下的“EjbTest.war”复制到同一目录下 启动服务JBoss服务器,之后在浏览器窗口的地址栏中输入:“http:/localhost:8080/EjbTest/HelloWorldTest.jsp” JBoss详细介绍详细介绍 JBoss是一个运行EJB的J2EE应用服务器。它是开放源代码的项目,遵循最新的J2EE规范。从JBoss项目开始至今,它已经从一个EJB容器发展成为一个基于J2EE的Web 操作系统,它体现了J2EE规范中最新的技术,无论是学习还是应用,JBoss都为我们提供了一个非常优秀的平台。 熟悉熟悉JBoss的目录结构的目录结构 (1)bin目录目录(2)client目录目录 (3)docs目录目录 (4)docs/dtd目录目录 (5)lib目录目录 (6)server目录目录 (7)server/default目录目录 (8)server/all/conf目录目录 (9)server/all/data目录目录 (10)server/all/deploy目录目录 (11)server/all/lib目录目录 (12)server/all/log目录目录 (13)server/all/tmp目录目录 JBoss中的部署中的部署 任何“.jar”库 EJB JAR WAR EAR 包含JBoss MBean定义的XML文件 一个包含EJB JAR、WAR或者是EAR的解压缩内容,并以“.jar”、“.war”或者以“.ear”结尾的目录。可以把下列文件部署到可以把下列文件部署到JBoss中:中: 本章总结本章总结EJB概述传统EJB同新一代EJB的对比EJB3.0开发运行环境和配置运行一个简单的EJB3.0的例子JBoss服务器详细介绍JBoss服务的部署 动手实践:第一个动手实践:第一个EJB程序程序尝试尝试 EJB 编程编程Hello World!目标本体验项目用EJB组件简单的实现了在浏览器上显示“Hello World!”字符串的功能。启动JBoss服务器,将本项目的EJB组件包“HelloWorld.jar”和Web 应用包“EjbTest.war”(该包中有HelloWorldTest.jsp文件)复制到“JBoss安装目录/server/default/deploy”目录下。观察JBoss的运行状态,部署成功后在浏览器的地址栏中输入:“http:/localhost:8080/EjbTest/HelloWorldTest.jsp” 如果能够看到图1-1所示页面的“Hello World!”字符串的话,那么你已经简单学会了部署EJB组件以及在Web应用程序中调用EJB组件的技术。 图图1-1 测试页面运行结果测试页面运行结果 基本思路基本思路(1)做一个简单的EJB组件,打包并部署到JBoss服务器中。(2)在Web应用中调用此EJB组件中的Bean类,在页面上输出字符串“Hello World!”。(3)将Web应用程序打包成war文件并部署到JBoss服务器中,在浏览器中测试效果。(1)编写一个EJB的接口类:HelloWorld类,定义一个返回字符串的方法:hello()方法,参考代码如下:package com.ejb3;public interface HelloWorldpublic String hello();(2)编写一个EJB的实现类,Session Bean:HelloWorldBean,Remote类型,在hello()方法的实现中返回一个“Hello World”的字符串,代码如下:package com.ejb3;import javax.ejb.Remote;import javax.ejb.Stateless;StatelessRemote(HelloWorld.class)public class HelloWorldBean implements HelloWorldpublic String hello() return Hello World!;1.(3)在Web应用中调用EJB组件,新建一个JSP页面:HelloWorldTest.jsp,代码如下:2.4.5.6.My JSP HelloWorld.jsp starting page7.8.
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号