第一节

SpringBoot的基本特性及概念

约定优于配置
Build Anything with Spring Boot:Spring Boot is the starting point for
building all Spring-based applications. Spring Boot is designed to get you up
and running as quickly as possible, with minimal upfront configuration of
Spring.
上面这段话的意思大概为:springboot是基于spring开发的起点,减少了spring开发所需要的配置。
约定优于配置又叫按约定编程,是一种软件设计范式。
比如实体类是User时,我们对应的数据库表就是user,这种遵循某种规律的约定就是约定优于配置。
概念
springboot是基于spring的,对spring的一些缺点进行的改善(spring的缺点:spring的配置文件为重量级的,每次启动都需要扫描大量xml文件)。
优点一:起步依赖,springboot不再需要我们在pom.xml中配置spring,springmvc等依赖,它是把这些依赖打包到一起进行的引用。
优点二:自动配置,在springboot中,我们不再需要大量的配置bean,可以自动将bean注入到ioc容器中,通过@AutoWired注解来获取bean。

第二节

SpringBoot项目的构建

使用Spring Initializr构建
image.png
选择Spring Initializr,在连网的情况下会显示出如图内容,选择jdk开发版本。

image.png
springboot的版本号为2.5.2(默认选择的是最新最稳定),勾选Spring Web加入springmvc依赖。

第三节

SpringBoot的基本使用及热部署

基本案例

springboot的自动类应该在Controller包的父级,因为启动类在启动后扫描的范围为当前启动类所在包及其子包。比如和com.hellojava属于同一层级。
image.png

image.png

热部署
首先在pom.xml文件中加入相关依赖
image.png
<dependency>

  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-devtools</artifactId>

</dependency>

然后在IDEA工具中打开File->Settings->Compiler
image.png

然后shift+ctrl+alt+/打开
image.png

点击registry,勾选下列选项
image.png

第四节

SpringBoot的全局配置文件

application.properties配置文件
格式:
person.id=1
person.name=tom
person.hobby=study,play
person.map.k1 = v1
person.map.k2 = v2
person.pet.name = dog
person.pet.type = dog

application.yml配置文件
person:
id: 2
name: lisi
hobby: [play,study]
map: {v1: k1,v2: k2}
pet: {type: dog,name: tom}

全局配置文件加载顺序
如果有多个全局配置文件,按以下优先级加载,而且后面的会覆盖前面的
application*.yml
application*.yaml
application*.properties

第五节

注解ConfigurationProperties和Value的区别

@ConfigurationProperties注解的实体类,必须有set方法才能生效,是针对整个类的注解。方便地将配置文件中的自定义属性值批量注入到某个Bean对象的多个对应属性中。
@ConfigurationProperties(prefix = "person")
public class Person {
private int id;
// 属性的setXX()方法
public void setId(int id) {
this.id = id;
}
}

@Value注解是Spring框架提供的,用来读取配置文件中的属性值并逐个注入到Bean对象的对应属性中,Spring Boot框架从Spring框架中对@Value注解进行了默认继承,所以在Spring Boot框架中还可以使用该注解读取和注入配置文件属性值。
@Value注解在属性上,不能识别特殊类型的属性,比如map,对象等。自动帮你实现set,get方法。
public class Person {
@Value("${person.id}")
private int id;
}

第六节

自定义配置和自定义参数

自定义配置文件
SpringBoot免除了项目中大部分的手动配置,对于一些特定情况,我们可以通过修改全局配置文
件以适应具体生产环境,可以说,几乎所有的配置都可以写在application.peroperties文件中,SpringBoot会自动加载全局配置文件从而免除我们手动加载的烦恼。但是,如果我们自定义配置文件,SpringBoot是无法识别这些配置文件的,此时就需要我们手动加载。
第一步:
在resources包下创建test.properties文件
image.png

第二步:
创建一个测试实体类
image.png

第三步:
在test下进行测试
image.png

随机数参数的设置和参数的应用
随机数参数设置:
my.secret=${random.value} // 配置随机值
my.number=${random.int} // 配置随机整数
my.bignumber=${random.long} // 配置随机long类型数
my.uuid=${random.uuid} // 配置随机uuid类型数
my.number.less.than.ten=${random.int(10)} // 配置小于10的随机整数
my.number.in.range=${random.int[1024,65536]} // 配置范围在[1024,65536]之间的随机整数

参数的引用:
app.name=MyApp
app.description=${app.name} is good


No_more
1 声望0 粉丝