Řekni mi, proč by měl někdo používat Spring namísto EE 7?
Java EE 7 do veľkej miery dobieha sadu funkcionality, ktorá je v Springu. Je veľmi málo featúr, ktorá existuje v Java EE a nie je v Springu urobená buď rovnako, alebo dokonca lepšie. Na druhej strane, Spring vie Java EE featúry využívať bez problémov (@Inject, JSF, JPA).
U nás máme spring-based architektúru hlavne preto, lebo Spring Boot umožňuje deployovať microservices extrémne jednoducho a rýchlo. (tam Java EE tak skoro nebude). Nehovoriac o perlách ako integrácie s cloudovými technológiami.
Popri tom máme Spring Security na zabezpečenie REST API (v Java EE neexistuje ekvivalent, azda len Apache Shiro). Na samotné REST API je v Spring @MVC, ktoré je rovnako efektívne ako JAX-RS.
Na ostatných projektoch máte vecičky ako Spring Integration, či Spring Web Security.
Java EE už nie je ten humus, čo bývali staré EJB, problém je však v tom, že i keď je to štandard, kým sa výboru podarí pretlačiť špecifikáciu a kým ju implementujú aplikačné servery, môže uplynúť dosť veľa času. (Porov. kde bude Java EE 8 a čo bude riešiť Spring 5).
A mimochodom, XML už vôbec nemusíte používať: naše microservicy nad Spring Bootom / Tomcatom majú presne 0 riadkov XML.