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

本文介绍了开发符合EJB 2.0的Java EE Enterprise Java Beans所需的基本特性、概念和技术。在本教程中,您将学习如何:

  • 创建EJB项目
  • 创建会话EJB
  • 将项目配置为使用XDoclet代码生成
  • 打包并部署会话EJB

该特性在MyEclipse中可用。在上文中我们为大家介绍了如何创建一个EJB项目和会话EJB - Part 1(点击这里回顾>>),本文将继续介绍如何为XDoclet支持配置项目,欢迎持续关注我们获取更多中文教程!

MyEclipse v2025.2离线版下载

三、为XDoclet支持配置项目

默认情况下,MyEclipse EJB项目没有配置为使用XDoclet特性。本节介绍启用和配置具有XDoclet支持的firstjb EJB项目的步骤,以及执行XDoclet代码生成来派生Trader EJB的依赖源代码和部署组件的步骤。

首先将Standard EJB XDoclet配置添加到第一个EJB项目,本节的最终目标是生成用于创建ANT脚本的XDoclet配置,MyEclipse执行ANT脚本来生成部署Trader EJB所需的附加EJB构件。

  1. 右键单击firstjb,然后选择Properties。展开MyEclipse,并选择XDoclet。

XDoclet配置页面

  1. 单击Add Standard,选择Standard EJB,然后单击OK。

注意:除了MyEclipse提供的预配置XDoclet模块之外,您还可以创建自己的自定义XDoclet配置。

添加标准EJB配置

将Standard EJB模块添加到列表后,选择它来显示包含的文档。注意ejbdoclet出现在左下角的列表中,ejbdoclet下的子文档包含必需的和可选的子任务,许多子任务不适用于简单的无状态会话bean(如Trader EJB)。

标准ejbdoclet的默认子任务

  1. 删除不需要的子任务,直到只剩下下图所示的列表。要删除,右键单击每个子任务,然后选择Remove,此配置中的每个项都表示EJB XDoclet子任务。

Trader EJB所需的XDoclet EJB子任务

  1. (可选)如果您在创建项目时指定了非默认源文件夹,则必须更新以下元素的项目相对路径属性ejbdoclet>destDir, deploymentdescriptor>destDir和fileset>src tasks。在左下角面板中选择每个元素,然后在右下角面板中查看和修改它们各自的属性。

  2. 单击Build选项卡来配置项目的XDoclet构建文件策略。

注意:如果这是一个新项目,则Build策略设置为默认策略,因此您可以跳到步骤7。

  1. 选择Use dynamic build specification policy选项。

如果使用的是已经包含XDoclet配置的现有项目,可以选择删除不必要的xdoclet-build.xml文件。有关这些策略的更详细解释,请参见下表。默认情况下,将新项目设置为使用动态生成策略,您可以在此参数页面上覆盖项目的此默认值。

XDoclet构建文件策略配置

警告!当修改项目的XDoclet配置属性时,项目的xdoclet-build.xml文件将被新版本覆盖。仅当需要手动管理xdoclet-build.xml文件时,使用Use XDoclet-build.xml策略。

  1. 单击OK。XDoclet配置保存到名为.xdoclet的文件中,此外如果启用了"Use xdoclet-build.xml file"构建策略,那么MyEclipse将从XDoclet设置生成一个名为xdoclet-build.xml的文件,并将该文件存储在项目的根文件夹中。
3.2 配置应用服务器XDoclet(可选)

XDoclet能够生成特定于应用服务器的部署描述符,本节将在下面演示con3。

注意:稍后您将看到将firstjb部署到本地JBoss服务器的步骤,因此这些步骤使用JBoss子任务。

  1. 右键单击firstjb,选择Properties,展开MyEclipse,然后选择XDoclet。

  2. 选择Standard EJB来查看任务。右键单击ejbdoclet,并选择Add。

  3. 选择jboss,并单击OK。

向ejbdoclet添加JBoss子任务

  1. 选择jboss子任务,双击destDir属性,在Value字段中输入src/META-INF,然后单击OK。

设置jboss子任务属性

  1. 单击Properties窗口上的OK。
相关推荐
JAVA面经实录91715 分钟前
Java多线程并发高频面试100题(完整版·含答案·背诵版)
java·开发语言·面试
XiYang-DING18 分钟前
【Java EE】TCP—延时应答
网络·tcp/ip·java-ee
XiYang-DING18 分钟前
【Java EE】TCP—流量控制和拥塞控制
java·tcp/ip·java-ee
BIG_PEI38 分钟前
检查并安装Redis
java
大貔貅喝啤酒40 分钟前
基于Windows下载安装Android Studio 3.3.2版本教程(2026详细图文版)
android·java·windows·android studio
奋斗的小方42 分钟前
Java基础篇09:项目实战
java·开发语言
海兰43 分钟前
【第21篇-续】graph-Stream-Node改造为适配openAI模型示例
java·人工智能·spring boot·spring·spring ai
vKd0Ff21L1 小时前
如何在Dev-C++中设置TDM-GCC为默认编译器第九十一篇
java·jvm·c++
武子康1 小时前
Java-221 RocketMQ 消息存储核心原理:CommitLog、ConsumerQueue、IndexFile 与消息过滤机制
java·大数据·分布式·消息队列·rabbitmq·rocketmq·java-rocketmq
北风toto1 小时前
为什么 IntelliJ IDEA Community 无法开发 Vue?——附解决方案
java·vue.js·intellij-idea