Springboot基础

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6


一、属性配置

官方文档参考

springboot中3种配置文件的格式

  • properties传统格式/默认格式
  • yml主流格式
  • yaml

配置文件的优先级properties>yml>yaml

不同配置文件中相同配置按照加载优先级相互覆盖不同配置文件中不同配置全部保留

1、修改服务器端口

application.properties文件中加上server.port=80

2、修改banner

关闭bannerspring.main.banner-mode=off

3、日志

默认logging.level.root=info
报错级logging.level.root=warn

二、yaml格式

YAMLYAML Ain’t Markup Language一种数据序列化格式

  • 优点
    • 容易阅读
    • 容易与脚本语言交互
    • 以数据为核心重数据轻格式
  • YAML文件扩展名
    • .yml主流
    • .yaml

1、语法规则

核心规则数据前面要加空格与冒号隔开

  • 大小敏感
  • 属性层级关系使用多行描述每行结尾使用冒号结束
  • 使用缩进表示层级关系同层级左侧对齐只允许使用空格不允许使用tab键
  • 属性值前面添加空格属性名与属性值之间使用冒号+空格作为分隔
  • #表示注释
  • 字面值表示方式
    • 使用~表示null
    • float 3.14支持科学计数法
    • 可以使用双引号包裹特殊字符
    • 日期必须使用yyyy-MM-dd格式
    • 时间和日期之间使用T连接最后使用+代表时区
  • 数组表示方法在属性名书写位置的下方使用减号作为数据开始符号每行书写一个数据减号与数据间空格分隔

2、读取单一yaml属性数据

  • 使用@value读取单个数据属性名引用方式${一级属性名.二级属性名...}
  • 如果数据存在多层级依次书写层级吗名称即可

application.yml

country: china
user:
  name: wk
  age: 22

users: [1,2,2,3]

DemoController

@Value("${country}")
private String country1;

@Value("${user.name}")
private String name;

@Value("${users[1]}")
private String users1;

在配置文件中可以使用属性名引用方式引用属性
属性值中如果出现转移字符需要使用双引号包裹作为字符解析

3、读取yaml全部属性数据

  • 1、使用Environment对象封装全部配置信息
	@Autowired
    private Environment environment;
  • 2、使用@Autowired自动装配数据到Environment对象中
environment.getProperty()

4、读取yaml引用类型属性数据

  • 1、自定义对象封装指定数据
datasource:
  driver: com.mysql.jdbc.Driver
  url: jdbc:mysql
  username: root
  password: 123
  • 2、定义数据模型封装yaml文件中对应的数据

使用@ConfigurationProperties注解绑定配置信息到封装类中
封装类需要定义为spring管理的bean否则无法进行属性注入

@Data
//定义为spring管控的bean
@Component
//指定加载的数据
@ConfigurationProperties(prefix = "datasource")
public class MyDemo {
    private String driver;
    private String url;
    private String username;
    private String password;
}
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Spring