The Spring IO Platform
First released in June 2014, brings together the Spring family of projects into a cohesive and versioned foundational platform for modern applications. On top of this foundation it also provides domain-specific execution environments for a variety of enterprise workloads.
Build anything
Write clean, testable code against the infrastructure components of your choice and accomplish any task without re-inventing the wheel.
Run Anywhere
Keep it portable – Spring-based apps run anywhere the JVM does. Deploy standalone, in an app server, on a PaaS or all of the above.
Rest Assured
Code with confidence – Spring provides an open-programming model that is comprehensive, cohesive, widely understood, and well-supported.
5 Reasons
why you should use Spring
Modularity
Spring is organized in a modular fashion. Even though the number of packages and classes are substantial, you have to worry only about ones you need and ignore the rest.
Simplicity
Spring enables developers to develop enterprise-class applications using POJOs. The benefit of using only POJOs is that you do not need an EJB container product, such as an application server, but you have the option of using only a robust servlet-container such as Tomcat or some other commercial product.
Testability
Testing an application written with Spring is simple because environment-dependent code is moved into this framework. Furthermore, by using JavaBean-style POJOs, it becomes easier to use dependency injection for injecting test data.
LightWeight
Lightweight IoC containers tend to be lightweight, especially when compared to EJB containers, for example. This is beneficial for developing and deploying applications on computers with limited memory and CPU resources.
Design
Spring's web framework is a well-designed web MVC framework, which provides a great alternative to web frameworks such as Struts, or other over engineered or less popular options.