EJB代表企业Java Beans。 EJB是J2EE平台的一个重要组成部分。 J2EE平台拥有基于组件的架构,可提供多层次,分布式和高事务功能的企业级应用。
EJB提供了一个架构来开发和部署考虑稳健性,高可扩展性和高性能的基于组件的企业应用程序。 EJB应用程序可以部署在任何符合J2EE 1.3标准规范的应用服务器上。我们将在本教程中讨论EJB 3.0。
EJB主要的三种类型将在下面进行简要描述:
EJB是Java的框架,因此第一个要求是JDK已经安装在你的机器上。
现在打开控制台并执行以下java命令。
让我们来验证所有操作系统的输出︰
如果您没有安装Java,请安装Java软件开发工具包(SDK) http://www.oracle.com/technetwork/java/javase/downloads/index.html 。本教程使用Java 1.6.0_21作为安装版本。
设置JAVA_HOME环境变量,使之指向安装在您机器上Java的基本目录位置。例如
将 Java 编译器位置追加到系统路径
使用Java - version命令验证如上所述安装的Java。
下载最新版本的NetBeans IDEhttps://netbeans.org/downloads/index.html 。在写这篇教程的时候,我下载的Netbeans 7.3里面自带JDK 1.7捆绑在一起。使用以下链接http://www.oracle.com/technetwork/java/javase/downloads/index.html
您可以下载最新版本的JBoss服务器http://www.jboss.org/jbossas/downloads/ 。根据下OS下载对应的档案。提取Jboss到你机器上的任意位置。
打开插件窗口使用工具 > 插件。打开"可用插件"标签和"JavaWeb 和 EE"类别下选择"EJB 和耳"和"Java EE 基地"。单击安装按钮。Netbeans 会下载并安装相应的插件。验证插件安装使用"安装"选项卡。
Open Plugin window using Tools > Plugins. Open "Available Plugin" tab and select "Java EE Base" and "EJB and EAR" under "Java Web and EE" category. Click install button. Netbeans will download and install the respective plugins. Verify plugins installation using "Installed" tab.

转到服务选项卡,并用鼠标右键单击服务器来添加新的服务器。
Go to Services tab and right click on servers to add a new server.

添加服务器事例向导将打开。选择JBoss和在下一步输入相关细节,在NetBeans中配置服务器。

一旦一切都cofigured,你会看到以下画面。
下载最新版本的PostgreSQL数据库服务器http://www.postgresql.org/download/ 。本教程下载的是PostgreSQL 9.2
若要创建一个简单的 EJB 模块,我们将使用 NetBeans"新建项目"向导。在以下示例中,我们将创建一个名为Component的 ejb 模块项目。
在NetBeans IDE中,选择File > New Project > 文件>新建项目>。你会看到以下画面。

选择项目类型下,Java EE 项目类别作为 Ejb 模块。单击下一步 > 按钮。您将看到下图所示的画面。

输入项目名称和位置。单击下一步>Next > 按钮。你会看到以下画面。

选择服务器作为JBoss应用服务器 。单击Finish按钮。你会看到NetBeans中创建以下项目。

新 > 会议 Bean.你将会 看到 新 的 会话 Beanwizard 。

输入会话bean名称和包名称。单击Finish按钮。你会看到NetBeans中创建以下EJB类。
因为我们要更改到本地接口到远程接口去访问基于控制台应用程序中的 ejb,远程/本地接口用于公开 ejb 已实施的业务方法。
LibrarySessionBeanLocal被重命名为LibrarySessionBeanRemote和LibrarySessionBean实现LibrarySessionBeanRemote接口。
LibrarySessionBeanRemote
LibrarySessionBean
你会看到在NetBeans控制台输出以下内容。
你会看到下面的输出在NetBeans下JBoss应用服务器输出。
你会看到在NetBeans控制台输出以下内容。
JBoss应用服务器日志输出
在项目中创建jndi.properties说明EjbTester。
jndi.properties
其下创建包com.tutorialspoint.test和EJBTester.java类。
EJBTester.java
在项目资源管理器中找到EJBTester.java。右键单击EJBTester类并选择运行文件 run file。
验证Netbeans的控制台下面的输出。
在下面的章节中,我们将讨论完整的EJB应用程序的多个方面。
无状态会话bean是一种企业bean,它通常用来做独立操作。无状态会话Bean根据其名字没有任何关联的客户端的状态,但它可能会保留其实例的状态。 EJB容器通常会创建一些无状态Bean的对象池,并使用这些对象来处理客户端的请求。由于池,实例变量的值不能保证是相同的跨越查找/方法调用。
下面是创建一个无状态EJB所需的步骤。
远程接口
无状态EJB
让我们创建一个测试EJB应用程序来测试无状态EJB。
EJBTester执行以下任务。
在项目资源管理器中找到EJBTester.java。右键单击EJBTester类并选择运行文件 run file。
验证以下在 Netbeans 控制台输出。
在项目资源管理器中找到EJBTester.java。右键单击EJBTester类并选择运行文件 run file。
验证以下在 Netbeans 控制台输出。
有状态会话bean是一种企业bean保存会话状态与客户端。有状态会话bean按照其名称让相关客户端状态的实例变量。EJB容器创建一个单独的有状态会话bean来处理客户的每个请求。一旦请求范围结束,statelful会话bean被摧毁。
下面是创建一个有状态EJB所需的步骤。
远程接口
EJB状态
让我们创建一个测试EJB应用程序来测试状态EJB。
EJBTester执行以下任务。
在项目资源管理器中找到EJBTester.java。右键单击EJBTester类并选择运行文件 run file。
验证以下在 Netbeans 控制台输出。
在项目资源管理器中找到EJBTester.java。右键单击EJBTester类并选择运行文件 run file。
验证以下在 Netbeans 控制台输出。
EJB 3.0实体bean中使用EJB 2.0在很大程度上是被持久性机制所取代。现在实体bean是一个简单的POJO映射表。
以下是持久性API的关键角色
为了展示EJB的持久性机制,我们将执行以下任务。
在默认数据库 postgres 中创建书的表。
数据源(jboss-ds.xml)
持久性单元(persistence.xml中)
构建EJB模块之后,我们需要一个客户端访问bean的无状态,我们会在下一节中创建。
让我们创建一个测试EJB应用程序来测试EJB的持久性机制。
EJBTester执行以下任务。
在项目资源管理器中找到EJBTester.java。右键单击EJBTester类并选择运行文件 run file。
验证以下在 Netbeans 控制台输出。
访问EJB之前重新启动JBoss。
在项目资源管理器中找到EJBTester.java。右键单击EJBTester类并选择运行文件 run file。
验证以下在 Netbeans 控制台输出。
消息驱动的bean是一种企业bean调用的EJB容器时,它接收一条消息队列或主题。消息驱动的bean是一个无状态bean,用于做异步任务。
为了演示使用消息驱动bean,我们将使用EJB的持久性这一章,我们要做以下工作。
Create a file named jbossmq-destinations-service.xml if not exists in <JBoss Installation Folder> > server > default > deploy folder.
在这里,我们创建了一个名为BookQueue队列
jbossmq-destinations-service.xml
当你启动JBoss,你会看到一个类似的条目在JBoss日志中
构建EjbComponent项目,并在JBoss部署它。构建和部署EJB模块后,我们需要一个客户端发送消息到JBoss队列。
让我们创建一个测试 EJB 应用程序来测试消息驱动 Bean。
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/java-jiao-cheng/13237.html