Jakarta ee Java企业应用程序项目结构

Jakarta ee Java企业应用程序项目结构,jakarta-ee,Jakarta Ee,我正在尝试使用Eclipse创建一个JavaWeb应用程序,我的Web服务器是Weblogic-12c 因为我是JavaEE技术的新手,所以我想知道我需要创建什么样的文件夹结构,它符合行业惯例,并且易于部署 我对这个主题做了一些研究,大多数oracle示例说明: 创建Web应用程序项目(WAR) Cretae一个EJB项目(ejbjar)——用于业务逻辑 创建一个Enterprice项目(EAR)——它将上述两个项目绑定到一个项目中 但是,我希望避免使用EJB层,但仍然希望将业务逻辑保留在单

我正在尝试使用Eclipse创建一个JavaWeb应用程序,我的Web服务器是Weblogic-12c

因为我是JavaEE技术的新手,所以我想知道我需要创建什么样的文件夹结构,它符合行业惯例,并且易于部署

我对这个主题做了一些研究,大多数oracle示例说明:

  • 创建Web应用程序项目(WAR)
  • Cretae一个EJB项目(ejbjar)——用于业务逻辑
  • 创建一个Enterprice项目(EAR)——它将上述两个项目绑定到一个项目中
但是,我希望避免使用EJB层,但仍然希望将业务逻辑保留在单独的项目中。那么,我应该在Eclipse中创建什么样的项目来保存我的业务逻辑类呢

以下是几个问题:

  • 我打算使用Spring3.1MVC。我应该在WEB-INF文件夹下包含Spring框架JAR,还是应该在项目库中添加引用

  • 如果我想添加一些库(JAR),这对两个项目(Web应用程序和业务逻辑)都是通用的,那么我应该将这些JAR放在哪里


当您说希望避免使用EJB层,但仍然将业务逻辑放在一个单独的项目中时,这有点令人困惑。在JavaEE中,业务逻辑最好用EJBbean来表示,如果您希望在单独的项目中使用这些bean,那么您描述的结构就是标准结构

注意,在Weblogic-12c(以及每个JavaEE6应用服务器)中,您可以简单地将基于EJB的业务逻辑放在WAR中,例如放在一个单独的包中。没有必要将它们放在单独的项目中

如果您的意思是希望在业务逻辑中使用普通Java类而不是EJB,那么您可能需要三思。特别是在使用数据库(JPA)时,EJB会让您远离很多琐事。在现代JavaEE中,它们绝对不是您应该积极避免的东西。在大多数情况下,ejbbean的编程与普通Java类一样简单。您只添加了一个注释(大部分是@Stateless),仅此而已

如果您想拥有两个项目共用的库,那么EAR/lib是默认机制。您放在那里的每个jar都可以用于Web项目和EJB项目

此外,如果您使用的是Weblogic-12c,请注意它已经附带了一个非常好的MVC框架(JSF2),可以立即使用。因此,您不必自己添加这些内容。

我们通常遵循以下项目结构,以实现well architect产品开发和易于维护。根据您使用的需求和设计模式,不同的项目可能会有所不同

aem(ATOCONN企业管理)产品的Src文件夹


在现代JavaEE中,它们绝对不是你应该积极避免的东西。
没错。在Sainy Petersburg举行的上一次JavaDay会议上,有人说改进
EJB
唯一要做的事情就是更改它的名称:)基本上:P从EJB2的“全盛期”到现在已经过去了7年,但我想痛苦、震惊和恐惧仍然在人们的脑海中浮现。EJB3是一种完全不同的方法,越来越多的人认为它需要更改名称。也许如果EJB3将被表示为一组CDI注释(可能在JavaEE8时间范围内),那么这个名称也将消失。
com.atoconn.aem.beans // This usually containts all beans

com.atoconn.aem.controllers //All controllers will goes here.
   |com.atoconn.aem.controllers.finance
   |com.atoconn.aem.controllers.projects
   |....

com.atoconn.aem.services // All service layer related thing here.

com.atoconn.aem.dao //All database related classes will goes here

com.atoconn.aem.util // All utility classes here