Introduction of Spring Boot
Spring Boot is a project that is built on the top of the Spring Framework. It provides an easier and faster way to set up, configure, and run both simple and web-based applications.
It is a Spring module that provides the RAD (Rapid Application Development) feature to the Spring Framework. It is used to create a stand- alone Spring-based application that you can just run because it needs minimal Spring configuration.
In Spring Boot, there is no requirement for XML configuration (deployment descriptor). It uses convention over configuration software design paradigm that means it decreases the effort of the developer.
Spring Boot automatically configures your application based on the dependencies you have added to the project by using @EnableAutoConfiguration annotation. For example, if MySQL database is on your classpath, but you have not configured any database connection, then Spring Boot auto-configures an in-memory database.
The entry point of the spring boot application is the class contains @SpringBootApplication annotation and the main method.
Spring Boot automatically scans all the components included in the project by using @ComponentScan annotation.
For example, if you want to use Spring and JPA for database access, it is sufficient if you include spring-boot-starter-data-jpa dependency in your project.
The main goal of Spring Boot is to reduce development, unit test, and integration test time.
Provides Opinionated Development approach
Avoids defining more Annotation Configuration
Avoids writing lots of import statements
Avoids XML Configuration.
2. Important Topic in Spring Boot
Application events and listeners
Some Annotation of Spring Boot
@RequestBody and @ResponseBody
@RequestHeader and @ResponseHeader
Some Important links for Spring Boot Tutorial