ejb的maven

从前面的部分恢复

第1部分
第2部分

我们在第三部分继续介绍,我们已经有一个父pom,并且已经为我们的war模块定义了pom。 在我们的原始设置中,我们定义了我们的应用程序将包含一个ejb jar形式的服务jar。 这是我们的Enterprise Java Bean,特别是Session Bean。 我们还定义了另一个模块(层),该模块将托管实体Bean(数据库表示Bean),即所谓的域模型。

定义服务(ejb)模块

在父pom文件夹下,我们像使用war模块一样创建一个新的子文件夹。 在此文件夹中,我们创建一个pom.xml文件,其中包含以下内容。该文件夹的名称为sample-services。 pom看起来像这样。 最终,现在就差不多了。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>gr.javapapo</groupId><artifactId>sample-parent</artifactId><version>0.0.1-SNAPSHOT</version></parent><artifactId>sample-services</artifactId><name>sample-services</name>   <description>EJB service layer</description><packaging>ejb</packaging><build><finalName>${project.artifactId}</finalName></build><dependencies><dependency><groupId>javax</groupId><artifactId>javaee-api</artifactId></dependency></dependencies></project>

记住,我们已经在 pom的依赖项管理部分中定义了javaee-api jar的版本,并且在插件管理部分中还定义了一个maven插件,它将处理ejb.jar的特定包装。要求。 它是maven-ejb-plugin。 返回到父pom并搜索以上两个点。 由于在父pom中定义了所有这些元素,因此我们的ejb服务pom看起来非常小。 按照惯例,Maven将负责大部分工作。 Maven ejb插件即将启动,因为我们已定义此模块所需的包装为' ejb '。

我们的项目结构如下所示:

定义实体bean(ejb)模块

在父pom文件夹下,我们创建了一个新的子文件夹,就像之前的ejb模块一样。 我们将其命名为sample-domain。 这是我们将遵循JPA2规范对数据库表示Bean(即所谓的实体Bean)进行编码的模块。

pom看起来相当简单。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>gr.javapapo</groupId><artifactId>sample-parent</artifactId><version>0.0.1-SNAPSHOT</version></parent><artifactId>sample-domain</artifactId><packaging>ejb</packaging><name>sample-domain</name><description>JPA entities for our project - domain model</description><build><finalName>${project.artifactId}</finalName></build><dependencies><dependency><groupId>javax</groupId><artifactId>javaee-api</artifactId></dependency></dependencies></project>

包装仍然是ejb,因为它将托管EJB类,即所谓的Entity Beans 。

我们需要打包另一件事,因为该模块将“托管”我们的域对象,所以这是一个名为persistence.xml的XML描述符,它定义了应用程序将要连接的数据源。 在Java EE 7中,此文件已大大简化,我们甚至可以跳过数据源的定义,因为已经有一个默认值。 在这里看看。 从打包的角度来看,我们现在更感兴趣的是,您需要做的是,在文件夹src / main / resources下创建一个名为META-INF的新文件夹,并在其中放置persistence.xml文件,如下图所示。

此时persistence.xml的内容无关紧要(我们将重点关注下一篇文章),您可以在此文章的git分支上查找示例。

有关创建文件夹的说明,如果使用IDE(例如Eclipse或IntelliJ)添加Maven模块,则在创建新模块并定义POM之后,IDE会自动创建模块应该具有的标准布局文件夹。 Maven约定。 如果您遵循这些文章,并使用诸如简单文本编辑器之类的简单工具编写代码,那么您需要自己创建src / main文件夹结构。

这就是本文的全部内容,我们为应用程序增加了2个模块,但是我们仍然缺少将它们全部打包的模块,这是ear模块。 我们还没有讨论模块的“相互依赖”,这是我们将要完成的工作,在下一个“耳朵”专用文章中,所有这些都将整合在一起。

这些简单poms的代码可以在bitbucket项目中的post3标签下找到 。

翻译自: https://www.javacodegeeks.com/2014/05/java-ee7-and-maven-project-for-newbies-part-3-defining-the-ejb-services-and-jpa-entities-modules.html

ejb的maven

ejb的maven_针对新手的Java EE7和Maven项目-第3部分-定义ejb服务和jpa实体模块相关推荐

  1. 针对新手的Java EE7和Maven项目-第3部分-定义ejb服务和jpa实体模块

    从前面的部分恢复 第1部分 第2部分 我们在第三部分继续介绍,我们已经有一个父pom,并且已经为我们的war模块定义了pom. 在我们的原始设置中,我们定义了我们的应用程序将包含一个ejb jar形式 ...

  2. java ee maven_针对新手的Java EE7和Maven项目–第1部分–简单的Maven项目结构–父pom...

    java ee maven 为什么呢 很多时候,我在日常工作中试图解决一些基本或复杂的Maven / Java EE项目结构问题. 为了提供解决方案,我经常最终会尝试项目结构,测试我在不同应用程序服务 ...

  3. java ee maven_针对新手的Java EE7和Maven项目–第6部分

    java ee maven 从前面的部分恢复 第1 部分 , 第2 部分 , 第3 部分 , 第4 部分 , 第5部分 在上一篇文章(第5部分)中,我们发现了如何使用Arquillian(我们的EJB ...

  4. java ee maven_针对新手的Java EE7和Maven项目–第5部分–使用Arquillian / Wildfly 8进行单元测试...

    java ee maven 从前面的部分恢复 第1 部分 , 第2 部分 , 第3 部分 , 第4部分 , 这是第一篇"额外"文章,基于我在该系列博客文章中"构建&quo ...

  5. 针对新手的Java EE7和Maven项目-第4部分-定义Ear模块

    从前面的部分恢复 第1部分 第2部分 第3部分 我们正在恢复第四部分,目前我们的简单项目有 Web Maven模块(战争) 一个ejb模块(ejb),其中包含我们的无状态会话bean(EJB 3.1) ...

  6. java ee maven_针对新手的Java EE7和Maven项目–第8部分

    java ee maven 第一部分 , 第2部分 , 第3部分 , 第4部分 , 第5部分 , 第6部分 , 第7部分 第8部分 自上一篇文章以来,这一系列教程已经有很长时间了. 是时候恢复并在我们 ...

  7. java ee maven_针对新手的Java EE7和Maven项目–第7部分

    java ee maven 从前面的部分恢复 第1 部分 , 第2 部分 , 第3 部分 , 第4 部分 , 第5 部分 , 第6部分 在上一篇文章(第6章)中,我们发现了如何使用Arquillian ...

  8. 针对新手的Java EE7和Maven项目–第1部分–简单的Maven项目结构–父pom

    为什么呢 很多时候,我在日常工作中试图解决一些基本或复杂的Maven / Java EE项目结构问题. 为了提供解决方案,我经常最终会尝试项目结构,测试我在不同应用程序服务器上的部署并细化我的配置. ...

  9. 针对新手的Java EE7和Maven项目–第6部分

    从前面的部分恢复 第1 部分 , 第2 部分 , 第3 部分 , 第4 部分 , 第5部分 在上一篇文章(第5部分)中,我们发现了如何使用Arquillian(我们的EJB服务)进行单元测试,并将其部 ...

最新文章

  1. 手把手实现火爆全网的视频特效 “蚂蚁呀嘿”,太魔性了
  2. 张宁北大计算机系,同是北大出身,差距悬殊!张宁在山西坐冷板凳,祝铭震已坐稳首发...
  3. 深入理解DPDK程序设计|Linux网络2.0
  4. a pycharm 标记多个_每周分享五个 PyCharm 使用技巧(二)
  5. 几行小代码,将Testlink的xml用例导入至excel
  6. 安全工具大全(持续补充中)
  7. Python语言三种优点。
  8. 复杂网络matlab程序,复杂网络matlab程序
  9. 计算机时钟电路检查,数字电子时钟电路设计实训报告
  10. Moq 和 RhinoMocks
  11. 【服务器数据恢复】服务器重启后掉线硬盘重新上线同步数据被中断后数据丢失的数据恢复案例
  12. 每日内涵微信小程序-2-轮播图圆角
  13. 征途mysql启动不了_征途单机版架设中场景服务器启动失败?这是为什么?
  14. Ural 2045 Richness of words
  15. css3变形 transform中复合写法的注意问题总结
  16. 申论(基础题)之扫清阅读障碍和提取障碍
  17. STM32学习记录--关于按键配置(PB3 PB4)
  18. 让图文不可复制、转载注明出处
  19. 红旗Linux网卡Bind,红旗linux(sp3)怎么安装网卡驱动啊
  20. 学习「线性代数」看哪篇?推荐这篇,超级棒!

热门文章

  1. 2021牛客暑期多校训练营1 J-Journey among Railway Stations(线段树+思维转化)
  2. Problem G. Graph 2015-2016 acmicpc neerc 拓扑排序模拟
  3. 5、mybatis中的映射器
  4. Mybatis生成器插件扩展,生成OR操作
  5. Java 虚拟机对锁优化所做的努力
  6. CGLIB 实现代理对象API
  7. Java命令学习系列(二)——Jstack
  8. 【Python】urllib爬取动漫图片
  9. CSS3的几个变形案例……
  10. javaWeb服务详解(含源代码,测试通过,注释) ——Emp的Service层