登 录
注 册
< 编程语言
Python
Java
Go
SQL
数据结构与算法
Spring Boot简介
Spring Boot启动器与自动配置
Spring Boot依赖注入与Runners
热门推荐>>>
中台架构
中台建设与架构
Hadoop
源码分析-NN启动(三)
HBase
HBased对接Hive
Linux
Nginx高可用
Python
数据导出工具
Flink
3分钟搭建Flink SQL测试环境
Kafka
Kafka对接Flume
深度学习
卷积神经网络
数据结构与算法
选择合适的算法
MySQL
数据备份恢复
计算机系统
信号量同步线程
Hive
Hive调优参数大全
其他框架
Azkaban Flow1.0与2.0
ClickHouse
表引擎-其他类型
技术成长
最好的职业建议
精选书单
技术成长书单—机器学习
技术资讯
数据在线:计算将成为公共服务
开发工具
IntelliJ IDEA 20年发展回顾(二)
系统工具
Mac命令行工具
虚拟化
内存虚拟化概述
云原生
云原生构建现代化应用
云服务
一文搞懂公有云、私有云...
Go
Go函数与方法
SQL
SQL模板
安全常识
一文读懂SSO
当前位置:
首页
>>
Java
>>
Spring Boot启动器与自动配置
Spring Boot启动器与自动配置
2023-09-10 17:45:37 星期日 发表于北京 阅读:577
![](/static/images/article_images/1694338876.767883.png) 处理依赖管理对于大型项目来说是一项艰巨的任务。 Spring Boot 通过提供一组依赖项方便开发人员解决了这个问题 例如,如果你想使用 Spring 和 JPA 进行数据库访问,则在项目中包含 spring-boot-starter-data-jpa 依赖项就足够了。 请注意,所有 Spring Boot 启动器都遵循相同的命名模式 spring-boot-starter- *,其中 * 表示它是应用程序的一种类型。 ##### 示例 Spring Boot Starter Actuator 依赖项 用于监视和管理你的应用程序。 其代码如下所示 ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> ``` Spring Boot Starter Security 依赖项 用于 Spring Security。 其代码如下所示 ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> ``` Spring Boot Starter web 依赖 用于编写一个 Rest Endpoints。 其代码如下所示 ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> ``` Spring Boot Starter Thyme Leaf 依赖项 用于创建 Web 应用程序。 其代码如下所示 ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> ``` Spring Boot Starter Test 依赖项用于编写测试用例。 其代码如下所示 ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> </dependency> ``` #### 自动配置 Spring Boot Auto Configuration 根据你在项目中添加的 JAR 依赖项自动配置你的 Spring 应用程序。 例如,如果 MySQL 数据库在你的类路径上,但你没有配置任何数据库连接,那么 Spring Boot 会自动配置一个内存数据库。 为此,你需要在 main 主类文件中添加 @EnableAutoConfiguration 注解或 @SpringBootApplication 注解。 然后,你的 Spring Boot 应用程序将被自动配置。如下代码: ```java import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; @EnableAutoConfiguration public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } } ``` #### Spring Boot 应用程序 Spring Boot Application 的入口点是包含 @SpringBootApplication 注解的类。 这个类应该有运行 Spring Boot 应用程序的 main 方法。 @SpringBootApplication 注解包括自动配置、组件扫描和 Spring Boot 配置。 如果在类中添加了@SpringBootApplication注解,则不需要添加@EnableAutoConfiguration、@ComponentScan和@SpringBootConfiguration注解。 @SpringBootApplication 注解包括所有其他注解。 ```java import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } } ``` #### 组件扫描 Spring Boot 应用程序在应用程序初始化时扫描所有 bean 和包声明。 你需要为你的类文件添加 @ComponentScan 注解以扫描你在项目中添加的组件 ```java import org.springframework.boot.SpringApplication; import org.springframework.context.annotation.ComponentScan; @ComponentScan public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } } ```