He estado haciendo Java SE durante algunos años y ahora estoy pasando a Java EE. Sin embargo, tengo algunos problemas para comprender algunos aspectos de Java EE.
¿Java EE es solo una especificación? Lo que quiero decir es: ¿es EJB Java EE?
¿Son EJB / Spring diferentes implementaciones de Java EE?
Lamento preguntar, pero tengo algunas dificultades para comprender qué es Java EE.
¿Alguien podría explicar qué es Java EE? Y EJB?
java
jakarta-ee
ejb
Frank Zimmer
fuente
fuente
Respuestas:
Java EE es de hecho una especificación abstracta . Cualquiera está abierto a desarrollar y proporcionar una implementación funcional de la especificación. Las implementaciones concretas son los llamados servidores de aplicaciones, como WildFly , TomEE , GlassFish , Liberty , WebLogic , etc. También hay contenedores de servlets que implementan solo la parte JSP / Servlet de la enorme API Java EE, como Tomcat , Jetty , etc.
Nosotros, los desarrolladores de Java EE, deberíamos escribir código que utiliza la especificación (es decir, importar sólo
javax.*
las clases en nuestro código en lugar de clases específicas de implementación, tales comoorg.jboss.wildfly.*
,com.sun.glassfish.*
, etc.) y luego vamos a ser capaz de ejecutar nuestro código en cualquier aplicación (por lo tanto, en cualquier servidor de aplicaciones). Si está familiarizado con JDBC, es básicamente el mismo concepto de cómo funcionan los controladores JDBC. Ver también ao En términos más simples, ¿qué es una fábrica?La descarga del SDK de Java EE de Oracle.com contiene básicamente el servidor GlassFish junto con un montón de documentación y ejemplos y, opcionalmente, también el IDE de NetBeans. No lo necesita si desea un servidor o IDE diferente.
EJB es parte de la especificación Java EE. Mira, está en la API Java EE . Los servidores de aplicaciones Java EE completos lo admiten de inmediato, pero los contenedores JSP / Servlet simples no.
Ver también:
No, como se dijo, EJB es parte de Java EE. Spring es un marco independiente que sustituye y mejora muchas partes de Java EE. Spring no necesariamente requiere Java EE para ejecutarse. Un contenedor de servlet básico como Tomcat ya es suficiente. En pocas palabras, Spring es un competidor de Java EE. Por ejemplo, "Spring" (independiente) compite con EJB / JTA, Spring MVC compite con JSF / JAX-RS, Spring DI / IoC / AOP compite con CDI, Spring Security compite con JAAS / JASPIC, etc.
En los viejos tiempos de J2EE / EJB2, la API EJB2 era terrible de implementar y mantener. Spring era entonces una alternativa mucho mejor a EJB2. Pero desde EJB3 (Java EE 5), la API de EJB mejoró mucho según las lecciones aprendidas de Spring. Desde CDI (Java EE 6), no hay realmente una razón para mirar nuevamente otro marco como Spring para hacer que los desarrolladores sean más fáciles de desarrollar, entre otros, la capa de servicio.
Solo cuando está utilizando un contenedor de servlet básico como Tomcat y no puede pasar a un servidor Java EE, Spring es más atractivo ya que es más fácil instalar Spring en Tomcat. No es posible instalar, por ejemplo, un contenedor EJB en Tomcat sin modificar el servidor, básicamente reinventarías TomEE.
Ver también:
fuente
Java Enterprise Edition (Java EE) es una especificación general que hace referencia a otras especificaciones más detalladas, de las cuales Enterprise JavaBeans (EJB) es una de las más importantes.
Lea esto : explica la diferencia entre Java EE y Spring
Gracias...
fuente
Fuente : Java 2 Platform, Enterprise Edition (J2EE) define el estándar para desarrollar aplicaciones empresariales multinivel basadas en componentes. J2EE simplifica la creación de aplicaciones empresariales que son portátiles, escalables y que se integran fácilmente con aplicaciones y datos heredados.
Fuente : la tecnología Enterprise JavaBeans (EJB) es la arquitectura de componentes del lado del servidor para Java Platform, Enterprise Edition (Java EE). La tecnología EJB permite el desarrollo rápido y simplificado de aplicaciones distribuidas, transaccionales, seguras y portátiles basadas en tecnología Java.
Java EE es una especificación.
EJB es la arquitectura de componentes del lado del servidor para Java EE
fuente
En pocas palabras: JavaEE es una plataforma.
Se compone de muchas especificaciones que son solo API. Las implementaciones concretas específicas de estas API son las llamadas 'Implementación de referencia'
EJB es Enterprise Java Beans
fuente