Spring boot study notes--Introduction to Spring boot

Introduction to Spring boot

 The spring framework is no stranger to many Java developers. Since its release in 2002, the Spring Framework has become a very popular foundational framework for enterprise application development. There are a large number of enterprise applications developed based on the Spring framework. The Spring Framework contains dozens of different sub-projects covering different aspects of application development. With so many sub-projects and components, on the one hand, it is convenient for developers to use, and on the other hand, it also brings problems in use. Each sub-project has a certain learning curve. Developers need to understand the specifics of these sub-projects and components in order to know how to integrate these sub-projects into a complete solution. There is no best practice guidance on how to use these components. For developers who are new to the Spring framework, they don't know how to use these components better. Another common problem with the Spring Framework is that it is cumbersome to quickly create a working application. SpringBoot is a new sub-project of the Spring framework for creating Spring 4.0 projects. Its development started in 2013. Version 1.0.0 was released in April 2014. It can automatically configure various components of Spring, and does not rely on code generation and XML configuration files. SpringBoot also provides recommended component configurations for common scenarios. SpringBoot can greatly improve the development efficiency when using the Spring framework.

    As can be seen from the Boot in the name of the SpringBoot project, the role of SpringBoot is to create and start a new project based on the Spring framework. Its purpose is to help developers easily create stand-alone and production-level applications based on the Spring Framework. SpringBoot will choose the most suitable Spring sub-projects and third-party open source libraries for integration. Most SpringBoot applications require very little configuration to get up and running quickly.
    Spring Boot includes the following features:
Create Spring applications that can run independently.
    Embeds directly into a Tomcat or Jetty server without deploying a WAR file.
    Provides a recommended base POM file to simplify ApacheMaven configuration.
    Automatically configure the Spring framework based on project dependencies as much as possible.
    Provides features that can be used directly in production, such as performance metrics, application information, and application health checks.
    No code generation, no XML configuration file
    Looking back when we used the Spring framework, we need to first add the relevant dependencies in the (if you use Maven) pom file (basically the same if you use gradle to build) and then create a new one Spring related xml files, and often those xml files are not less. Then continue to use tomcat or jetty as the container to run the project. Basically every time a new project is created, it is the same process, and sometimes we just want to quickly create a Springweb project to test something, or hope to save time.
    Spring boot makes all Spring development faster, and allows more people to experience Spring entry faster, providing a "starter" POM to simplify our Maven configuration (that is to say, using SpringBoot only works with maven/gradle, etc. Dependency management tools can exert its capabilities), unlike before, building a springmvc project requires a lot of configuration, etc.
out of the box, quickly start requirements development without being affected by other aspects (if possible, Spring will be automatically configured)
    Provide some non-functions Common features of large-scale projects (such as embedded server, security, measurement, health check, externalized configuration), such as Tomcat/Jetty can be directly embedded (no need to deploy war package separately), no code generation, and No XML configuration required

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326788134&siteId=291194637
Recommended