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 内部配置加载顺序
- file:./config/ :当前项目下的/config目录下
- file:./ :当前项目的根目录
- classpath:/config/:
classpath的/config目录
4.classpath:/ :classpath的根目录
2.6 外部配置加载顺序
看官网:http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!