1.@NotBlank@NotNull@NotEmpty不生效的原因
三个注释都是被标记的属性不能为空。那么不生效的原因是因为三者是有区别的,使用错误就会导致验证不会生效。
有可能是@Validated没写
有可能是没添加依赖
@NotNull 和 @NotEmpty 和@NotBlank 区别
@NotEmpty 用在集合类上面
@NotBlank 用在String上面
@NotNull 用在八种基本类型上{ byte、shor、int、long、float、double、boolean、char}
2.多环境切换
我们在主配置文件编写的时候,文件名可以是 application-{profile}.properties/yml , 用来指定多个环境版本
例如:
application-test.properties 代表测试环境配置
application-dev.properties 代表开发环境配置
但是Springboot并不会直接启动这些配置文件,它默认使用application.properties主配置
如果想要启动这些配置文件,需要通过一个配置来选择需要激活的环境:
spring.profiles.active=dev
springboot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot的默认配置文件
配置文件的优先级:
- 1:项目路径下的config文件夹配置文件优先级
- 2:项目路径下配置文件优先级
- 3:资源路径下的config文件夹配置文件优先级
- 4:资源路径下配置文件
优先级由高到底,高优先级的配置会覆盖低优先级的配置;
SpringBoot会从这四个位置全部加载主配置文件;互补配置;
yaml的多文档块
server:port: 8081#选择要激活那个环境块spring:profiles:active: prod---server:port: 8083spring:profiles: dev #配置环境的名称---server:port: 8084spring:profiles: prod #配置环境的名称
