Springboot Study-入门&配置

Springboot Study 入门&配置

1.入门

构建了Springboot工程,创建springboot项目,完成了第一个项目helloworld

2.配置

2.1 配置分类:

properties>yml>yaml(优先级)

2.2 yaml
  • 基本语法:大小写敏感,数值前要有空格,空格缩进表示层级关系

  • 数据格式:
    * 对象
    * 数组 (使用“-”表示数组每个元素)
    * 纯量
    * 参数引用:$

name: abc
person:
name: zhangsan
age: 18
address:
- beijing
- shanghai
- hangzhou
msg1: "hello \n world"
msg2: 'hello \n world'
2.3如何读取配置文件内容

(1) @Value(${})

@Value("${name}")
private String name;
@Value("${person.name}")
private String name2;
@Value("${person.age}")
private String age;
@Value("${address[0]}")
private String address1;
@Value("${msg1}")
private String msg1;

(2) environment

@Autowired
private Environment environment;
System.out.println(environment.getProperty("name"));
System.out.println(environment.getProperty("person.name"));
System.out.println(environment.getProperty("person.age"));
for (int i = 0; i < 2; i++) {
System.out.println(environment.getProperty("address["+i+"]"));
}

(3) @ConfigurationProperties
新建一个Person类

@Component
@ConfigurationProperties(prefix = "person")
public class Person {
private String name;
private int age;
private String[] address;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String[] getAddress() {
return address;
}
public void setAddress(String[] address) {
this.address = address;
}
@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}

注入:

@Autowired
private Person person;

调用

System.out.println(person.toString());
String address[]=person.getAddress();
for(String s:address){
System.out.println(s);
}
2.4 profile

不同环境下配置可能不同,profile功能就是来进行动态配置切换的

2.4.1 profile配置方式

(1)多profile文件方式

在主properties中:spring.profiles.active=dev

(2)yml多文档方式

spring:
profiles:
active: dev
---
spring:
config:
activate:
on-profile: dev
server:
port: 8081
---
spring:
config:
activate:
on-profile: pro
server:
port: 8082
---
spring:
config:
activate:
on-profile: test
server:
port: 8083
2.4.2 profile激活方式

(1)配置文件
在配置文件中配置:spring.profiles.active=dev

(2)虚拟机参数
在VMoption指定:-Dspring.profiles.active=dev

(3)命令行参数
java——jar xxx.jar --spring.profiles.active=dev

2.5 内部配置加载顺序
  1. file:./config/ :当前项目下的/config目录下
  2. file:./ :当前项目的根目录
  3. classpath:/config/:
    classpath的/config目录
    4.classpath:/ :classpath的根目录
2.6 外部配置加载顺序

看官网:http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html

posted @   jhhhred  阅读(8)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示