Spring Boot 开箱即用
Convention Over Configuration 约定优于配置,Spring Boot 其实就是就着这个观念设计出来的。
当初在使用 Spring 框架的时候,我们为了实现松耦合,需要配置很多的 xml,随着项目越来越大,发现维护性越来越差。开发者们思考着能不能定义一些规则,一些减少配置的规则,于是就出现了开箱即用的 Spring Boot。
怎么理解开箱即用?
Spring Boot 提供了很多的依赖模块,我们只需要在 pom 文件中添加相关依赖,Spring Boot 就会自动的创建并注入需要的 Bean 到上下文中。Spring Boot 还提供内嵌的应用服务器,所以我们可以很快的构建一个项目,实现其基本功能,并测试运行。
接下来我会简单的介绍 Spring Boot 的核心、构建及启动、pom 的优化、基础注解和实现一个小 demo。
-
Spring Boot 核心
自动配置、起步依赖、Actuator、命令行界面
-
构建、启动
构建和运行,网上的教学有很多,这里简单说明。
-
构建
我们可以在本机构建 maven 项目,然后引入相应的 pom 依赖,或是在 start.spring.io 上生成一个 Spring Boot 项目。
-
启动
我们可以直接在 Intellij 中 Run,或是
mvn package
之后使用java -jar
指令运行 jar 包。
-
-
pom 的优化
优化 pom 之前我们需要对 maven 有一定的了解,maven 也是基于
Convention Over Configuration
设计的。相对 maven 了解,也可以参考链接中的文章 maven。 pom 的优化,对于 Spring Boot,主要是聚合项目 pom 依赖的修改。
<dependencyManagement> <dependencies> <dependency> <!-- Import dependency management from Spring Boot --> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>1.5.1.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
-
基础注解
Spring Boot 定义很多的组合注解,用于减少配置,如:
@SpringBootApplication
、@RestController
,他们作为组合注解,都有各自存在的意义。后面会有专门的文章介绍 Spring Boot 的注解。-
@SprinBootApplication
组合了
@SpringBootConfiguration
、@EnableAutoConfiguration
、@ComponentScan
-
@RestController
组合了
@Controller
、@ResponseBody
-
@PostMapping
、@GetMapping
、@DeleteMapping
、@PutMapping
、@PatchMapping
-
-
小 demo 的实现
明日持续更新