Java EE究竟是什么?

Fra*_*mer 152 java ejb java-ee

我已经做了几年的Java SE并继续使用Java EE.但是我在理解Java EE的某些方面时遇到了一些麻烦.

  1. Java EE只是一个规范吗?我的意思是:EJB Java EE?

  2. EJB/Spring是不同的Java EE实现?

很抱歉,但是我很难理解Java EE是什么.有人能解释一下Java EE是什么吗?和EJB?

Bal*_*usC 175

Java EE只是一个规范吗?我的意思是:EJB Java EE?

Java EE确实是一个抽象规范.任何人都愿意开发并提供规范的工作实现.在具体的实现是所谓的应用服务器,如WildFly,TomEE,GlassFish的,自由,的WebLogic等,还有一些只实现了巨大的Java EE API的JSP/Servlet的一部分servlet容器,如Tomcat的,码头,等等

我们,Java EE的开发者,应该写利用规范的代码(即进口 javax.*班在我们的代码,而不是具体的实现类,如org.jboss.wildfly.*,com.sun.glassfish.*等),然后我们就可以在任何执行(运行我们的代码,因此,在任何应用服务器).如果您熟悉JDBC,它与JDBC驱动程序的工作方式基本相同.另见ao 简单来说,什么是工厂?

从Oracle.com 下载Java EE SDK基本上包含GlassFish服务器,其中包含大量文档和示例,还包括NetBeans IDE.如果您需要不同的服务器和/或IDE,则不需要它.

EJB是Java EE规范的一部分.看,它在Java EE API中.成熟的Java EE应用程序服务器支持它,但简单的JSP/Servlet容器却不支持.

也可以看看:


EJB/Spring是不同的Java EE实现?

不,如上所述,EJB是Java EE的一部分.Spring是一个独立的框架,可以替代和改进Java EE的许多部分.Spring不一定需要运行Java EE.像Tomcat这样的准系统servlet容器已经足够了.简而言之,Spring是Java EE的竞争对手.例如"Spring"(独立)竞争EJB/JTA,Spring MVC竞争JSF/JAX-RS,Spring DI/IoC/AOP竞争CDI,Spring Security竞争JAAS/JASPIC等.

在旧的J2EE/EJB2期间,EJB2 API实现和维护非常糟糕.然后Spring是EJB2的一个更好的替代品.但是从EJB3(Java EE 5)开始,基于从Spring学到的经验教训,EJB API得到了很大的改进.从CDI(Java EE 6)开始,没有理由再次查看像Spring这样的另一个框架,使开发人员更容易开发服务层.

只有当你使用像Tomcat这样的准系统servlet容器并且无法移动到Java EE服务器时,Spring才会更有吸引力,因为在Tomcat上安装Spring更容易.如果不修改服务器本身就不可能安装例如Tomcat的EJB容器,你基本上就是重新发明TomEE.

也可以看看:

  • @James:是的.Java EE API中的所有内容都是抽象的.Java SE API还有几个抽象部分,例如JDBC,JAXP,JAXB等. (4认同)
  • "没有理由再次关注像Spring这样的另一个框架来让开发人员更轻松." - >真正有价值的信息. (3认同)
  • 那么Java EE可以说是定义了典型的JEE应用程序运行应该存在哪些支持? (2认同)

Pra*_*ena 11

Java Enterprise Edition(Java EE)是一个伞形规范,它引用了许多其他更详细的规范,其中Enterprise JavaBeans(EJB)是其中一个更重要的规范.

阅读本文 - 它解释了Java EE和Spring之间的区别

谢谢...


归档时间:

查看次数:

50725 次

最近记录:

6 年,1 月 前