Spring Boot 2.6.1 https://spring.io/projects/spring-boot
Spring专栏https://blog.csdn.net/nrsc272420199/category_8739819.html
定位:是框架的框架,作用是简化常规框架的配置的方式,只需很少的代码即可以实现大量的功能,体现了开箱即用的思想
关于Maven依赖项版本的问题,原本使用框架时需要手动设置版本号,现SpringBoot框架引入后,所有的版本号信息,由SpringBoot官网测试并定义了版本号,只需要引入下面的这个依赖版本管理后,所需要的其他Jar包的版本信息就被导入了,以后导包的时候,如果在列表里面的,就不需要设置版本号了。
org.springframework.boot spring-boot-dependencies ${spring-boot.version} pom import
以下是完整的初始时SpringBoot项目的 pom.xml
视频作业:4.0.0 com.jt springboot_demo1 0.0.1-SNAPSHOT springboot_demo1 Demo project for Spring Boot 1.8 UTF-8 UTF-8 2.3.7.RELEASE org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test test org.junit.vintage junit-vintage-engine org.projectlombok lombok org.springframework.boot spring-boot-dependencies ${spring-boot.version} pom import org.apache.maven.plugins maven-compiler-plugin 3.8.1 1.8 1.8 UTF-8 org.springframework.boot spring-boot-maven-plugin 2.3.7.RELEASE com.jt.SpringbootDemo1Application repackage repackage
12.10日 前需要看完的视频
开箱即用1.脚手架的安装 https://www.bilibili.com/video/BV1SU4y1V7Jc?spm_id_from=333.999.0.0
2.1Vue组件路由1 https://www.bilibili.com/video/BV1bh411h7pZ?spm_id_from=333.999.0.0
2.2Vue组件路由2 https://www.bilibili.com/video/BV1Dw411o7ZZ?spm_id_from=333.999.0.0
3.SpringMVC https://www.bilibili.com/video/BV1qv411H7HR?spm_id_from=333.999.0.0
4.SpringBoot开箱即用原理 https://www.bilibili.com/video/BV1oh41167Aa?spm_id_from=333.999.0.0
SpringBoot将繁琐的配置封装到某些 jar包中,该暴打包中的文件已经完成了配置,引入即可使用,只需要少量的配置就可以获取其功能的方式,叫做开箱即用。
启动项:spring-boot-starter-xxxx
说明:包中已经将框架进行了整合,用户拿来就用
【Spring注解】@ComponentScan之includeFilters和excludeFilters https://blog.csdn.net/nrsc272420199/article/details/88385574
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringbootDemo1Application {
public static void main(String[] args) {
//SpringBoot的方式管理的Spring容器
SpringApplication.run(SpringbootDemo1Application.class, args);
}
}
以下是部分@SpringBootApplication注解的定义
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@documented
@Inherited
@SpringBootConfiguration
//用来加载SpringBoot-starter-xxx的启动项,当主启动类执行时,则会开始加始加载启动项中的配置,则功能加载成功。
@EnableAutoConfiguration
// 定义包扫描路径为当前类所在的目录,如此即可扫描其下的所有子孙包
@ComponentScan(excludeFilters = { @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),
@Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class) })
public @interface SpringBootApplication {}
yml文件
application.yml文件,将src/main/resources/application.properties文件的后缀直接修改为.yml
语法YML简介 https://www.jianshu.com/p/cea930923f3d
-
k: v 表示键值对关系,冒号后面必须有一个空格
-
使用空格的缩进表示层级关系,空格数目不重要,只要是左对齐的一列数据,都是同一个层级的
-
大小写敏感
-
缩进时不允许使用Tab键,只允许使用空格。
-
松散表示,java中对于驼峰命名法,可用原名或使用-代替驼峰,如java中的lastName属性,在yml中使用lastName或 last-name都可正确映射。
pom.xml中配置依赖
org.projectlombok lombok
然后在File -> settings -> Plugins里面搜索Lombok,看到如下的一个小辣椒的图标,如果没有安装就装一下,并根据提示重启IDEA
搜不到的,也可以到https://plugins.jetbrains.com/这个网站上去搜
常用注解
| 注解 | 作用 |
|---|---|
| @Data | 注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法 |
| @Setter | 注解在属性上;为属性提供 setting 方法 |
| @Getter | 注解在属性上;为属性提供 getting 方法 |
| @Log4j | 注解在类上;为类提供一个 属性名为log 的 log4j 日志对象 |
| @NoArgsConstructor | 注解在类上;为类提供一个无参的构造方法 |
| @AllArgsConstructor | 注解在类上;为类提供一个全参的构造方法 |
| @Accessors(chain = true) | 注解在类上;让类的setter方法返回当前对象本身,实现链式调用 |
编译后,对应的setter和getter方法就已经有了,所以打出的jar包放到服务器运行的时候就不需要再安装lombok的插件了
@SpringBootTest 规则说明:- 运行被@Test标识的方法时,SpringBoot程序启动
- SpringBoot启动后,内部Spring容器也被启动,基于IOC管理的对象就可以使用DI注入对象了
- 可以在任意的测试类中获取想要的对象
- 基于以上,请保持测试方法所在类的路径与SpringBoot主启动类的包路径一致


![SpringBoot学习笔记[持续更新中...] SpringBoot学习笔记[持续更新中...]](http://www.mshxw.com/aiimages/31/632066.png)
