Spring is a framework for dependency-injection which is a pattern that allows to build very decoupled systems.
The Spring Framework is divided into modules.
Applications can choose which modules they need.
At the heart are the modules of the core container, including a configuration model and a dependency injection mechanism.
Official Website Spring Release
Spring 1 : 2004
Spring 2 : 2006
Spring 3 : 2009
Spring 4 : 2013
Spring 4.3 : 2016
Spring 5 : 2017
The Spring Framework was first released in 2004; since then there have been significant major revisions.
Spring 2.0 provided
XML namespaces and AspectJ support. Spring 2.5 embraced
annotation-driven configuration. Spring 3.0 introduced a strong
Java 5+ foundation across the framework codebase, and features such as the Java-based @Configuration model. Version 4.0 was first to fully support
Java 8 features. You can still use Spring with older versions of Java, however, the minimum requirement has now been raised to
Java SE 6. Spring Framework 4.x Changes
Spring Framework 4.0 provides support for several Java 8 features.
Java EE 6 and 7
Java EE version 6 or above is now considered the baseline for Spring Framework 4, with the JPA 2.0 and Servlet 3.0 specifications being of particular relevance.
Spring Framework 4.0 supports the Java EE 7 level of applicable specifications now: in particular, JMS 2.0, JTA 1.2, JPA 2.1, Bean Validation 1.1, and JSR-236 Concurrency Utilities.
Spring Framework 5.x Changes
Servlet API 4
One of the new features that Spring 5 brings – is the server push support that comes with Java EE 8 Servlet 4.0 API. Java EE 7
Bean Validation 1.1
Java 8 or Higher
Java 8 is the minimum requirement to work on Spring Framework 5.0. Spring webflux
Spring-webflux module that supports reactive HTTP and WebSocket clients.
Spring Framework 5.0 fully supports Junit 5 Jupiter to write tests and extensions in JUnit 5.
EhCache 2.10+ / 3.0 GA
mock.staticmock of the spring-aspects module.
web.view.tiles2M. Now Tiles 3 is the minimum requirement.
orm.hibernate3 and orm.hibernate4. Now, Hibernate 5 is the supported framework.
Spring Framework 5.0 has also discontinued support for the following libraries:
Min Server Versions