The Spring Framework

Spring is one of the most popular application development frameworks for the Java Platform. First of all, we use it to develop web applications, but we can also apply it to the desktop and even to the command-line applications. In a way, Spring is a framework of frameworks that work together providing standard functionality to applications. That's why we sometimes call Spring a platform meaning it's more than just a framework.

Spring's logo

Spring is huge, and it can do a lot of useful things. Here is just a small list of some parts of Spring providing services necessary to most of the real-world applications:

Despite its popularity and all its features, Spring is not a perfect framework, and its creators understand it. One of the main issues is that the configuration of the Spring-based applications is very complex. This slows down the development process and creates extra complexity for the beginners.

Fortunately, Spring developers realized that it was possible to automate much of this work, so they developed a new framework called Spring Boot. This framework solves many configuration problems and makes Spring one of the most successful and convenient web development platforms among all.

What is Spring Boot?

Spring Boot is a part of Spring platform that allows the developers to create stand-alone production-grade Spring-based applications that you can "just run".

This framework has greatly simplified the configuration of applications by applying the convention over configuration approach. This means a programmer does not need to configure everything; instead, the framework defines some default components, behaviours, and automatic configurations for each of the major use cases in Spring. At the same time, when using it, you still have access to all the features of the Spring Framework together with the acquired ease of development.

Spring Boot also provides a few additional cool features, here are some of them: