day128-spring boot依赖管理特性与自动配置特性
父项目做依赖管理
依赖管理:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.4.RELEASE</version>
</parent>
其父项目:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.3.4.RELEASE</version>
</parent>
作用:声明了开发中所常用的所有依赖的版本号,自动仲裁版本机制
开发导入starter场景启动器
-
所有的spring boot场景依赖以spring-boot-starter-*. 其中 * 代表场景
-
引入starter后,此场景的所有常规依赖都自动注入
-
第三方提供的简化开发场景: *-spring-boot-starter
版本的自动仲裁
引入依赖可以不写版本号
引入非版本仲裁的jar时,需要写版本号
版本号的修改
-
可以查看spring boot dependencies 里面规定的当前版本所使用的依赖版本
-
在当前项目中重写配置
<properties>
<mysql.version>5.1.43</mysql.version>
</properties>
IDEA快捷键:
-
ctrl + shift + alt + U
:以图的方式显示项目中依赖之间的关系。 -
alt + ins
:相当于Eclipse的 Ctrl + N,创建新类,新包等。
springboot自动配置特性
-
自动配好Tomcat
-
引入Tomcat依赖。
-
配置Tomcat
-
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<version>2.3.4.RELEASE</version>
<scope>compile</scope>
</dependency>
-
自动配好SpringMVC
-
引入SpringMVC全套组件
-
自动配好SpringMVC常用组件(功能)
-
-
自动配好Web常见功能,如:字符编码问题
-
SpringBoot帮我们配置好了所有web开发的常见场景
-
可以在main程序中查看容器中配置的组件
public static void main(String[] args) {
//1、返回我们IOC容器
ConfigurableApplicationContext run = SpringApplication.run(MainApplication.class, args);
//2、查看容器里面的组件
String[] names = run.getBeanDefinitionNames();
for (String name : names) {
System.out.println(name);
}
}
默认的包结构
-
主程序所在包及其下面的所有子包里面的组件都会被默认扫描进来
-
无需以前的包扫描配置
-
想要改变扫描路径
-
@SpringBootApplication(scanBasePackages="com.lun")
-
@ComponentScan 指定扫描路径
-
@SpringBootApplication 等同于 @SpringBootConfiguration @EnableAutoConfiguration @ComponentScan("com.lun")
-
-
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!