Spring boot I understand is to combine some commonly used basic frameworks such as Spring Spring MVC Spring Data JPA and so on, provide default configurations, and then provide pluggable designs, that is, various starters, to facilitate developers to use this series of technologies, to paraphrase the official sentence, the Spring family has developed to this day, it is already very large, as a developer, if you want to use Spring A series of technologies in the family, need to be configured one by one, and then there is a version compatibility problem, in fact, it is quite troublesome, occasionally there will be small pits, in fact, it quite affects the development progress, spring boot is to solve this problem, provide a solution, you can not care about how to configure first, you can quickly start development, carry out business logic writing, all kinds of required technologies, join the starter and configure it, use it directly, it can be said to pursue the effect of using it out of the box
The spring framework has a lot of extensions, such as boot security, jpa, etc... But its basis is Spring's IOC and AOP, IOC provides dependency injection containers, AOP solves cross-section-oriented programming, and then implements the advanced functions of other extension products on the basis of these two, Spring MVC is an MVC framework based on Servlet, which mainly solves the problem of WEB development, because Spring's configuration is too complicated, and all kinds of XML JavaConfig hin trouble, so lazy people changed the world and launched Spring Boot conventions over configuration simplify the configuration process for spring
Spring initially leveraged Factory Mode (DI) and Agent Mode (AOP) to decouple application components. Everyone thought it was very useful, so they created an MVC framework (some components decoupled with Spring) according to this model and used it to develop web applications (SpringMVC). Then I found that every development had to do a lot of dependencies, and it was troublesome to write a lot of boilerplate code, so I made some lazy integration packages (starter), which is Spring Boot. |