The first version of Spring was released in October 2002 and consisted of a small core with an inversion of control (IoC) container that was easy to configure and use. Over the years, Spring has become the main replacement of Java Enterprise Edition (JEE) servers and has grown into a full-blown technology made up of many distinct projects, each with its own purpose, so whether you want to build microservices, applications, or classical ERPs, Spring has a project for that.
Typically, Spring is described as a lightweight framework for building Java applications. The lightweight part of the description doesn’t really refer to the number of classes or the size of the distribution but rather defines the principle of the Spring philosophy as a whole, that is, minimal impact. Spring is lightweight in the sense that you have to make few, if any, changes to your application code to gain the benefits of Spring.