Spring is a framework for enterprise development. It is similar to J2EE but is way more popular because of its helper classes, which make programming a breeze.
The rise of Spring
J2EE has been around since 1999, but it earned a bad reputation because of its use of Enterprise Java Beans (EJB), which were complicated to use and deteriorated the application’s performance. Other issues with J2EE included the need to write extensive plumbing code for error handling and JDBC connectivity, and the lack of unit testing support. The applications were heavyweight because all the Java EE features were supported and had to be configured and all dependencies had to be hard-coded as well.
In 2002, Rod Johnson wrote a book outlining a framework that simplified EE development. It was initially called Interface21 before being released as an open source framework. When Spring made its appearance in 2003, programmers were using J2EE without Java Beans. Spring gained immense popularity in a short amount of time and captured most of the J2EE market share. The EJB functionality was improved in Java EE5 and Java EE6, with the focus being on ease of use. Java EE8, released in 2017, was the last release after which Oracle decided to transfer Java EE to an open source foundation.The community renamed Java EE to Jakarta EE. Functionally speaking, Jakarta EE9 is essentially the same as Java EE8. New functionality has been added in Jakarta EE10.