当前位置: 首页 > news >正文

「Java EE开发指南」如何用MyEclipse开发Java EE企业应用程序?(二)

MyEclipse中文使用教程图集

本教程介绍了Java EE企业应用程序开发入门所需的基本特性、概念和技术。您将学习如何:

  • 创建企业应用程序(EAR)项目
  • 添加和删除模块
  • 打包、部署和测试EAR项目

该特性在MyEclipse中可用。在上文中(点击这里回顾>>),我们为大家介绍了如何创建一个企业应用程序项目及增加和移除模块,本文将继续介绍如何部署和测试EAR项目。

MyEclipse v2025.1离线版下载

四、部署EAR项目

对于项目部署,必须使用支持EARs的MyEclipse支持的应用程序服务器,本教程使用TomEE。

注意:您可以使用MyEclipse的部署程序集更好地控制已部署的文件。

1. 在Servers视图中右键单击服务器,然后选择Add/ Remove Deployments。

2. 在Available列中选择TraderJEE5,然后单击Add。您可以通过Configured您可以使用Configured列中模块旁边的下拉框选择打包部署或分解部署,但是为了最有效的开发过程,建议分解部署,单击Finish。

MyEclipse中文使用教程图集

添加部署

3. 右键单击服务器,如果服务器未运行,则选择Start。当服务器启动时,消息将被流式传输到Console视图,请注意显示TraderJEE5已成功部署的消息。

五、测试EAR项目

1. 单击地球图标。

2. 在地址字段中输入URL http://localhost:8080/TraderWeb/html/welcome.html,然后按Enter。

MyEclipse中文使用教程图集

TraderX欢迎页面

3. 在欢迎屏幕上单击Enter。

4. 在Stock Trading web表单中,在Stock Symbol和Quantity字段中输入值,然后单击Submit。

MyEclipse中文使用教程图集

TraderX股票交易表格

当提交股票交易表单时,transaction.jsp与使用名为Trader的无状态会话EJB启动事务的servlet进行交互。Trader EJB仅用于演示目的,不与实际的交易服务交互。

MyEclipse中文使用教程图集

TraderX交易确认

六、使用依赖Java项目的可选包支持

可选包是Java EE模块操作所需的一个或多个独立JAR文件。在许多方面,术语“可选包”是不恰当的,因为如果没有这些jar,依赖的Java EE模块将无法正常工作。对于这样的jar,更合适的名称是“required packages”。Java EE规范允许将可选包Jar归档包含在EAR归档中,并通过需要Jar提供服务的任何模块的MANIFEST.MF文件中的“Class-Path”条目进行引用。

对于使用其他Jar打包服务的EJB模块,通常需要可选包部署。与可以容纳打包库的WAR归档文件不同,EJB Jar没有这样的规定。例如,如果EJB模块将Log4J用于其日志服务,则必须将Log4J Jar库包含在EAR中,并在EJB模块的清单文件中引用。

要将Java项目配置为可选包,必须使其依赖于企业项目。在下面的示例场景中,我们使用一个Test1EJB项目,该项目需要由logging Java项目定义的日志服务。由于EJB项目的Java EE部署形式有限,所以请使用企业项目,该项目将Test1EJB项目作为模块,并将Logging Java项目作为依赖项。

6.1 配置依赖Java项目作为可选包

1. 在资源管理器中右键单击Test1,然后选择Properties。

2. 选择Deployment>Deployment Assembly,然后单击Add。

MyEclipse中文使用教程图集

向Test1添加依赖项

3. 选择Project,然后单击Next。

MyEclipse中文使用教程图集

选择项目指令

4. 选择依赖的项目(本例中我们使用Logging),然后单击Finish,单击OK关闭Properties窗口。

5. 要将依赖的logging.jar模块包含到Test1EJB项目的MANIFEST.MF的Class-Path段中,请右键单击Test1EJB,并选择Properties。

6. 选择Deployment>Deployment Assembly,然后单击Manifest Entries选项卡。

7. 单击Add,选择Logging.jar,然后单击Finish,单击OK关闭Properties窗口。

http://www.dtcms.com/a/389256.html

相关文章:

  • Linux -- 传输层协议UDP
  • 使用Android Studio中自带的手机投屏功能
  • LeetCode:19.螺旋矩阵
  • Windows 命令行:在 cd 命令中使用绝对路径与相对路径
  • 图片修改尺寸
  • 《嵌入式硬件(十五):基于IMX6ULL的统一异步收发器(UART)的操作》
  • Python爬虫实战:研究Pandas,构建苏宁易购月饼销售数据采集与智能推荐系统
  • 导购app佣金模式的分布式计算架构:实时分账与财务对账
  • Linux Bash脚本自动创建keystore和生成公钥
  • 数据库管理员偏爱哪些MySQL数据库连接工具?
  • 大数据毕业设计选题推荐-基于大数据的农产品交易数据分析与可视化系统-Spark-Hadoop-Bigdata
  • MySQL C API 的“连接孵化器”-`mysql_init()`
  • oracle 数据库导入dmp文件
  • 第二部分:VTK核心类详解(第28章 vtkMatrix4x4矩阵类)
  • JDK、JRE、JVM 是什么?有什么关系?【Java】
  • Visual Studio 2022创建CPP项目
  • Nginx反向代理+负载均衡
  • React Suspense底层原理揭秘
  • 关于pycharm高版本导入torch的问题
  • 【硬件研讨】【笔记本电脑】给老ThinkPad升级内存
  • 论文Review 3DGS SuGaR | CVPR 2024 | 3DGS 转 Mesh 开源方案!!
  • Makefile学习(一)- 基础规则
  • 动态代理 设计模式
  • APP小程序被攻击了该如何应对
  • 零基础从头教学Linux(Day 37)
  • ADB 在嵌入式 Linux 系统调试中的应用
  • 7HTMLCSS高级
  • 玩游戏/用设计软件提示d3dcompiler_47.dll缺失怎么修复?5步快速定位问题,高效修复不踩坑
  • HTML应用指南:利用GET请求获取全国宝马授权经销商门店位置信息
  • 《Java网络编程》第一章:基本网络概念