Faço o Java SE há alguns anos e passo para o Java EE. No entanto, tenho alguns problemas para entender alguns aspectos do Java EE.
O Java EE é apenas uma especificação? O que quero dizer é: EJB Java EE?
As implementações diferentes do EJB / Spring do Java EE?
Lamento perguntar, mas tenho algumas dificuldades para entender o que é o Java EE.
Alguém poderia explicar o que é Java EE? E EJB?
java
jakarta-ee
ejb
Frank Zimmer
fonte
fonte
Respostas:
Java EE é realmente uma especificação abstrata . Qualquer pessoa está aberta para desenvolver e fornecer uma implementação funcional da especificação. As implementações concretas são os chamados servidores de aplicativos, como WildFly , TomEE , GlassFish , Liberty , WebLogic etc. Também existem contêineres de servlets que implementam apenas a parte JSP / Servlet da enorme API Java EE, como Tomcat , Jetty , etc.
Nós, os desenvolvedores Java EE, deve escrever código utilizando a especificação (ou seja, importar apenas
javax.*
as classes em nosso código em vez de classes específicas de implementação, comoorg.jboss.wildfly.*
,com.sun.glassfish.*
, etc) e, em seguida, nós vamos ser capazes de executar nosso código em qualquer aplicação (assim, em qualquer servidor de aplicação). Se você conhece o JDBC, é basicamente o mesmo conceito de como os drivers JDBC funcionam. Veja também ao Em termos mais simples, o que é uma fábrica?O download do Java EE SDK do Oracle.com contém basicamente o servidor GlassFish ao longo de várias documentações e exemplos e, opcionalmente, também o NetBeans IDE. Você não precisa se deseja um servidor e / ou IDE diferente.
O EJB faz parte da especificação Java EE. Olha, está na API Java EE . Os servidores de aplicativos Java EE completos suportam isso imediatamente, mas os contêineres JSP / Servlet simples não.
Veja também:
Não, como dito, o EJB faz parte do Java EE. O Spring é uma estrutura independente que substitui e aprimora muitas partes do Java EE. O Spring não requer necessariamente que o Java EE seja executado. Um contêiner de servlet básico como o Tomcat já é suficiente. Simplificando, o Spring é um concorrente do Java EE. Por exemplo, "Spring" (autônomo) compete com EJB / JTA, Spring MVC com JSF / JAX-RS, Spring DI / IoC / AOP com CDI, Spring Security com JAAS / JASPIC, etc.
Nos tempos antigos do J2EE / EJB2, a API do EJB2 era terrível de implementar e manter. A primavera era então uma alternativa muito melhor ao EJB2. Mas desde o EJB3 (Java EE 5), a API do EJB foi muito aprimorada com base nas lições aprendidas com o Spring. Desde CDI (Java EE 6), não há realmente uma razão para olhar novamente outra estrutura, como o Spring, para tornar os desenvolvedores mais fáceis e desenvolver, entre outros, a camada de serviço.
Somente quando você estiver usando um contêiner de servlet básico como o Tomcat e não puder passar para um servidor Java EE, o Spring será mais atraente, pois será mais fácil instalar o Spring no Tomcat. Não é possível instalar, por exemplo, um contêiner EJB no Tomcat sem modificar o próprio servidor, você basicamente reinventaria o TomEE.
Veja também:
fonte
O Java Enterprise Edition (Java EE) é uma especificação abrangente que faz referência a várias outras especificações mais detalhadas, das quais o Enterprise JavaBeans (EJB) é uma das mais importantes.
Ler isto - explica a diferença entre Java EE e Spring
Obrigado...
fonte
Origem - Java 2 Platform, Enterprise Edition (J2EE) define o padrão para o desenvolvimento de aplicativos corporativos de várias camadas baseados em componentes. O J2EE simplifica a criação de aplicativos corporativos portáteis, escaláveis e que se integram facilmente aos aplicativos e dados herdados.
Origem - A tecnologia Enterprise JavaBeans (EJB) é a arquitetura do componente do lado do servidor para Java Platform, Enterprise Edition (Java EE). A tecnologia EJB permite o desenvolvimento rápido e simplificado de aplicativos distribuídos, transacionais, seguros e portáteis baseados na tecnologia Java.
Java EE é uma especificação.
EJB é a arquitetura de componentes do lado do servidor para Java EE
fonte
Simplificando - JavaEE é uma plataforma.
É composto de muitas especificações, que são apenas APIs. As implementações concretas específicas dessas APIs são as chamadas 'Implementação de referência'
EJB é Enterprise Java Beans
fonte