「Java EE开发指南」如何在MyEclipse中开发EJB 2 Session Bean?(一)

本文介绍了开发符合EJB 2.0的Java EE Enterprise Java Beans所需的基本特性、概念和技术。在本教程中,您将学习如何:
- 创建EJB项目
- 创建会话EJB
- 将项目配置为使用XDoclet代码生成
- 打包并部署会话EJB
该特性在MyEclipse中可用。
MyEclipse技术交流群:1041265693 欢迎一起进群讨论
一、创建一个EJB项目
1. 选择File>New Project,然后选择EJB Project,并单击Next。
2. 在Project name字段中输入firstejb。
3. 为Specification Level选择J2EE 1.3选项,从Target Runtime下拉列表中选择用于J2EE 1.3的MyEclipse Generic Runtime,然后单击Next。

Project Name – 必须是有效的Eclipse Java项目名称。
Location – 取消选中复选框,为新项目及其资源指定自定义文件系统位置。
Directory – 项目的默认文件系统位置位于MyEclipse启动时所在的工作区文件夹下,您可以在工作区文件夹之外选择另一个文件位置。
注意:您不能在工作区文件夹中选择一个备用文件夹,因为Eclipse不允许这样做。
Source Folder – Java源文件夹 - 将包含Java包、*. Java文件和属性文件,此文件夹的内容被添加到项目的Java构建路径中。
Java EE Specification Level – 指定Java EE规范遵从级别,确保为应用程序所需的Java EE特性选择适当的规范级别,并确保目标部署应用程序服务器支持此规范级别。
4. 单击默认的源文件夹,然后单击Edit,将文件夹名称更改为src,然后单击OK。

5. 单击Next,取消选中Generate scaffolding code复选框。

6. 单击Finish,其余的向导页面是从MyEclipse EJB项目模板中填充的,这个模板是在MyEclipse Java EE Project参数中定义的。
下图描述了新的EJB项目结构,新创建的EJB项目包括一个默认的EJB -jar.xml文件。但是在流程的这一点上不存在ejb,因此出现了带有错误标记的ejb-jar.xml文件,稍后使用XDoclet技术创建所需的EJB定义。

二、创建会话EJB - Part 1
MyEclipse中的EJB 2.x开发使用EJB向导和集成的XDoclet支持的组合,每个EJB由三个基本部分组成:
- EJB Remote接口类声明客户端可用的业务操作
- EJB实现类(也称为bean类)包含业务逻辑
- EJB Home接口类,它控制bean的生命周期
bean类是主要的实现关注点,因为它提供EJB的功能。从使用XDoclet注释的bean类,可以自动生成bean的Remote和Home接口,以及EJB -jar.xml部署描述符中的EJB条目,这个由两部分组成的示例演示了创建称为Trader EJB的无状态会话bean的过程。第1部分侧重于使用MyEclipse EJB创建向导和XDoclet支持来创建一个基本的可部署的Trader EJB,第2部分介绍了为Trader EJB实现业务服务或功能的过程。
示例Trader EJB为股票的买卖提供了简化的服务,由于本文档的范围是对MyEclipse EJB开发特性的快速介绍,因此Trader EJB不涉及事务或企业资源(如数据库或消息队列)的集成。
首先使用EJB创建向导创建Trader bean实现类,在创建了Trader bean类之后,您将为bean生成Remote和Home接口以及ejb-jar.xml条目。
1. 在资源管理器中选中firstejb项目,选择File>New>Other。
2. 展开MyEclipse>EJB,选择EJB2 Session Bean,然后单击Next。

3. 默认情况下输入源文件夹,这就是放置新EJB类的地方。在Package字段中输入com.genuitec.trader.ejb。您可以浏览现有的包,但如果包不存在,它将为您创建。
注意:XDoclet的默认配置要求包名以.ejb结尾,也可以使用其他包后缀,但是这样做需要在生成之前手动更新项目的EJB XDoclet设置。
4. 在Name字段中输入TraderBean,这是所创建的EJB bean实现类的名称。“Bean”后缀是用于标识Bean实现类的约定,在为相关的EJB文件创建XDoclet标记时,EJB向导会删除这个后缀。
5. 单击Finish接受其余的默认值。

TraderBean实现类被创建并在Java编辑器中打开,请注意EJB创建向导如何自动插入定义EJB接口和部署细节的XDoclet EJB标记。

6. 修改TraderBean XDoclet jndi-name标记,使其与下面的标记相匹配,从而与其他MyEclipse文档中使用的示例更加一致。
jndi-name = "ejb/com/genuitec/trader/ejb/TraderHome"
7. 按CTRL+S保存TraderBean.java类。
浙公网安备 33010602011771号