「Java EE开发指南」如何用MyEclipse创建企业应用项目?(一)

由于有了项目模型和管理工具,现在可以创建Java EE企业应用程序。在本文中您将了解到:

  • 企业应用项目模型
  • 项目组织、依赖关系和类解析

该特性在MyEclipse中可用。

MyEclipse v2025.1离线版下载

1. 企业应用项目模型

MyEclipse提供了一个企业应用程序项目模型,即EAR项目模型,以及用于创建Java EE企业应用程序的管理工具。由图标标识的EAR项目是Web、应用程序客户端、连接器和EJB项目的逻辑容器,它产生一个名为Java EE Enterprise Archive (EAR)的单个服务器端部署单元。没有子项目物理上位于EAR项目的文件夹结构中,而是EAR项目维护对其组件模块的引用。

Java EE规范将企业应用程序的运行时结构定义为Java EE模块和模块所需的基本文件资源的集合。

最常见的Java EE模块类型有:

  • Web模块------通常表示为Web Archive (WAR)
  • EJB模块------通常表示为EJB JAR归档

EAR项目必须至少包括一个模块项目,因此在EAR项目开发期间,只要包含一个模块项目,就可以根据需要添加和删除模块项目。在部署企业项目时,引用的模块项目被打包到各自的归档表单中,并作为企业归档的模块进行部署。

通常,web模块提供web用户界面服务和用户对由一个或多个EJB模块提供的业务服务的访问,Java EE规范将EAR定义为标准的Java EE部署单元。此外,该规范允许(但不要求)应用服务器供应商支持其他部署形式,如独立WAR和EJB jar。

MyEclipse项目模型体系结构

MyEclipse项目模型以以下方式与Java EE企业应用程序模型并行:

  • MyEclipse Web模块项目 - 设计时相当于Java EE Web模块,Web Module项目与基本的MyEclipse Web项目相同,只是增加了内部元数据和可选的项目依赖项。
  • MyEclipse EJB模块项目 - 设计时等同于Java EE EJB模块,EJB模块项目与基本的MyEclipse EJB项目相同,只是增加了内部元数据和可选的项目依赖项。
  • MyEclipse企业项目 - 设计时相当于Java EE企业应用程序。不包含任何Web或EJB项目代码,而是维护与模块项目的关联。

所有使用JavaEE版本低于5.0的EAR项目都是用一个META-INF根文件夹和一个空的META-INF/application.xml部署描述符创建的。对于使用Java EE 5或更高版本的项目,不需要这个文件,可以选择为您生成这个文件,还可以根据需要修改application.xml文件。

注意:对于需要application.xml文件的Java EE版本,不要移动或重命名该文件或META-INF文件夹,这样做会导致部署失败。除了项目的元数据文件之外的所有资源都被认为是部署的一部分。

企业应用程序项目的MyEclipse透视图

下图描述了MyEclipse web项目的资源透视图,这个视图显示了项目的部署信息,可以使用项目的部署程序集属性自定义项目部署。

企业应用程序项目的资源透视图

相关推荐
jyOverQ33 分钟前
从零学 JVM(七):垃圾收集器详解——Serial、ParNew、Parallel、CMS 与 G1
java·jvm
liangbo741 分钟前
Spring系列11:切点表达式
java·spring
3095566661 小时前
股票接口返回 404 与空数组的排查笔记:证书状态与级别参数
java·笔记·python·ios·iphone·股票数据api·股票数据接口
nice_lcj5201 小时前
MySQL 存储引擎入门:InnoDB 和 MyISAM 到底怎么选
java·数据库·mysql·面试·innodb·存储引擎·myisam
文丑颜不良啊1 小时前
LeetCode2861~2880题目解析
java·leetcode
2601_967980111 小时前
世界上最好的Python编辑器是什么?我投PyCharm一票
ide·python·pycharm·数据科学·jupyter notebook
装不满的克莱因瓶1 小时前
设计模式之策略模式核心概念和应用场景
java·后端·设计模式·架构·系统架构·策略模式
晴天的雨.9922 小时前
【C++】继承篇
java·开发语言·c++
SomeOtherTime2 小时前
第 1 讲:内存布局与所有权解剖——栈帧、胖指针与“移动/拷贝”在汇编层面的真实面目
java·开发语言·汇编
qq_406981032 小时前
c++ lamda(三)Lambda表达式
java·前端·c++