web-dev-qa-db-fra.com

En quoi consiste exactement Java EE?

Je fais Java SE depuis quelques années maintenant et je passe à Java EE. Cependant, j'ai quelques difficultés à comprendre certains aspects de Java EE.

  1. Est-ce que Java EE est juste une spécification? Ce que je veux dire est: Est-ce que EJB Java EE?

  2. Les implémentations EJB/Spring de Java EE?) Sont-elles différentes?

Je suis désolé de demander, mais j’ai du mal à comprendre ce que Java EE est.

Quelqu'un pourrait-il expliquer ce que Java EE est? Et EJB?

144
Frank Zimmer

Est-ce que Java EE est juste une spécification? Ce que je veux dire est: Est-ce que EJB Java EE??

Java EE est en effet une spécification abstraite . Tout le monde est ouvert pour développer et fournir une implémentation fonctionnelle de la spécification. Les implémentations concrètes sont des serveurs d’application, tels que WildFly , TomEE , GlassFish , Liberty , WebLogic , etc. Il existe également des conteneurs de servlets qui implémentent uniquement la partie JSP/Servlet de l'énorme API Java EE, comme Tomcat , jetée , etc.

Nous, Java EE, devrions écrire du code utilisant la spécification (c.-à-d. Importer uniquement) javax.* classes dans notre code au lieu de classes spécifiques à l’implémentation telles que org.jboss.wildfly.*, com.Sun.glassfish.*, etc) et ensuite nous pourrons exécuter notre code sur n’importe quelle implémentation (donc sur n’importe quel serveur d’applications). Si vous connaissez JDBC, c'est en gros le même concept que le fonctionnement des pilotes JDBC. Voir aussi a.o. En termes simples, qu'est-ce qu'une usine?

Le téléchargement du SDK Java EE d’Oracle.com contient essentiellement le serveur GlassFish, ainsi qu’une documentation et des exemples, ainsi que, éventuellement, l’EDI NetBeans. Vous n'en avez pas besoin si vous voulez un autre serveur et/ou IDE.

EJB fait partie de la Java EE. Regardez, elle se trouve dans la Java EE) . À part entière Java EE le prennent en charge, mais pas les conteneurs JSP/Servlet simples.

Voir également:


Les implémentations EJB/Spring de Java EE?) Sont-elles différentes?

Non, comme dit, EJB fait partie de Java EE. Spring est un framework autonome qui substitue et améliore de nombreuses parties de Java EE. Spring ne fonctionne pas nécessairement require Java EE à exécuter. Un servletcontainer à corps nu comme Tomcat suffit déjà. En résumé, Spring est un concurrent de Java EE. Par exemple, "Spring" (autonome) ) participe au concours EJB/JTA, au Spring MVC au concours JSF/JAX-RS, au concours Spring ID/IoC/AOP au CDI, au dispositif Spring Security, au concours JAAS/JASPIC, etc.

À l'époque des anciens temps J2EE/EJB2, la mise en œuvre et la maintenance de l'API EJB2 étaient terribles. Le printemps était alors une bien meilleure alternative à EJB2. Mais depuis EJB3 (Java EE 5), l’API EJB a été considérablement améliorée sur la base des leçons tirées de Spring. Depuis CDI (Java EE 6), il n’ya pas vraiment de raison de revoir un autre framework (---) comme celui de Spring, afin de faciliter la tâche des développeurs quant au développement de la couche service.

Ce n'est que lorsque vous utilisez un servletcontainer barebone tel que Tomcat et que vous ne pouvez pas passer à un serveur Java EE, alors Spring est plus attrayant, car il est plus facile d'installer Spring sur Tomcat. t possible d’installer par exemple un conteneur EJB sur Tomcat sans modifier le serveur lui-même, vous réinventez TomEE.

Voir également:

166
BalusC

Java Enterprise Edition (Java EE) est une spécification générale qui fait référence à un certain nombre de spécifications plus détaillées, parmi lesquelles Enterprise JavaBeans (EJB) est l’une des plus importantes.

Lire this - cela explique la différence entre Java EE et Spring

Merci...

11
  • Source - Java 2 Plateforme, Enterprise Edition (J2EE) définit la norme pour le développement d'applications d'entreprise à plusieurs composants basées sur des composants. J2EE simplifie la création d'applications d'entreprise portables, évolutives et s'intègrent facilement aux applications et données existantes.

  • Source - La technologie Enterprise JavaBeans (EJB) est l’architecture des composants côté serveur de Java Platform, Enterprise Edition (Java EE). La technologie EJB permet un développement rapide et simplifié d'applications distribuées, transactionnelles, sécurisées et portables basées sur la technologie Java.

  • Est-ce que Java EE est juste une spécification? Ce que je veux dire est: Est-ce que EJB Java EE?

    • Java EE est une spécification.

    • EJB est une architecture de composant côté serveur pour Java EE

  • Les implémentations EJB/Spring de Java EE?) Sont-elles différentes?

    • Les deux EJB et Spring sont des frameworks différents suivant Java EE.
4
Srikanth Venkatesh