三、Spring Boot配置文件
3.1 yml配置文件
- 需要使用到
@ConfigurationProperties
注解,并用prefix
指定前缀
给对象的属性赋值:
Person.java
@Component
/*
将本类中的所有属性和配置文件中相关的配置进行绑定
prefix指定要绑定的配置文件中的属性前缀;
*/
@ConfigurationProperties(prefix = "person")
public class Person {
private int id;
private String name;
private boolean success;
private Date birth;
private Car car;
private Map<String, Object> maps;
private List<Object> lists;
// 赋值时是通过set方法,此处省略
}
application.yml配置
person:
name: "张三"
# ${random.value}
success: true
birth: 2022/08/05 # 对于时间日期,springBoot会自行格式转换
car:
cName: 奔驰
color: 红色
maps:
aaa: "aaaaaa \n bb" # 在双引号中,\n 会换行
bbb: 'bbbbb \n bb' # 在单引号中,\n 不会换行 没有转义
ccc: ccc对应值
lists:
- 1
- dsf
- 第三个
# lists: [aaa,bbb,ccc]
3.2 properties配置文件
同样的Person类
person.id=${random.int}
person.name=${random.value}
person.birth=2020/05/03
person.car.c-name=sdfsdf
person.maps.name=dong
person.maps.aaa=${person.address}
person.lists=fds
3.3 配置文件加载位置与顺序
springboot默认会从以下位置加载配置文件:application.properties/application.yml
- 项目所在磁盘路径file:./config/
- 项目所在磁盘路径file:./
- 项目类路径classpath:/config/
- 项目类路径classpath:/
优先级由高到底,高优先级的配置会覆盖低优先级的配置;SpringBoot会从这四个位置全部加载主配置文件,互补配置; 如果要加载其他位置的配置文件,可以通过–spring.config.location(只能加到命令行)来指定要加载的配置文件的位置。
就相当于加载顺序为classpath:/
→classpath:/config/
→file:./
→file:./config/
,相同的配置,后面的会覆盖前面的
3.4 @ConfigurationProperties注解和@Value注解的区别
@ConfigurationProperties
注解用于根据配置文件批量注入值,springboot默认配置文件application.yml/application.properties;@Value
注解用于根据配置文件单个注入值;
区别 | @ConfigurationProperties | @Value |
---|---|---|
SpEL | 不支持 | 支持 |
复杂类型封装 | 支持 | 不支持 |
四、Thymeleaf模板引擎
找到模板引擎的配置类ThymeleafProperties
很明显,我们可以看到前缀和后缀。
要在类路径下的templates
文件夹下。
4.1 循环
整合Redis
导入启动器依赖
<!--整合redis的启动器-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
使用RedisTemplate操作Redis
-
普通String类型操作
-
List类型操作
-
Set类型操作
-
ZSet操作
-
Hash操作