Pourquoi Spring
Spring permet principalement de faire la même chose que ce que l’on ferait avec un serveur Jakarta EE complet (Java dans sa version entreprise) comme par exemple WebSphere, WebLogic, JBoss, Glassfish, mais aussi dans un serveur (un conteneur) web léger comme Tomcat, Undertow ou Jetty et de façon beaucoup plus simple et testable. Au niveau des fonctionnalités il est en général en avance sur Jakarta EE. Il a en effet été conçu au départ pour pallier certaines difficultés rencontrées lors de la mise en œuvre des premières versions de Java EE, notamment avec les EJB, et a ensuite progressivement creusé l’écart en évoluant plus rapidement.
Spring permet de s’interfacer facilement avec différents frameworks tiers via des API unifiées. Il gomme les différences entre frameworks car il offre des façades qui simplifient le code. Les manipulations de données avec des bases SQL deviennent par exemple génériques et réutilisables. L’idée est d’uniformiser les appels entre frameworks, de simplifier et de standardiser la gestion des erreurs et des exceptions.
Il se distingue également par sa capacité à permettre facilement de tester de façon performante les applications en embarquant dans les tests une version allégée du contexte d’exécution, alors que sur Jakarta EE il faut souvent un serveur dans...