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")
-