Springboot的两种配置文件语法详细介绍

简介: Springboot的两种配置文件语法详细介绍

SpringBoot使用一个全局的配置文件,配置文件名是固定的,有下面两种文件:


  • application.properties
  • application.yml


application.properties配置文件



# 字面量(数字,字符串,布尔)
user.user-name=张三
# 对象
user.user-name=45678
user.pwd=123456
user.mobile=18393948482
user.age=25
# 数组
user.hobby=吃饭,睡觉,打豆豆
# Map对象
user.map.k1=123456
user.map..k2=456789


需要注意的是:字符串不需要使用双引号或者单引号,如果有写只会当做字符串的一部分,原样输出。


测试代码如下:


//读取配置文件,并注入属性
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import java.util.Map;
@Data
@Component
@ConfigurationProperties(prefix = "user")
public class User {
    private String userName;
    private String mobile;
    private String pwd;
    private int age;
    private String[] hobby;
    private Map<String,String> map;
}
//测试
import com.example.demo.entity.User;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest
public class DemoApplicationTests {
    @Autowired
    User user;
    @Test
    public void contextLoads() {
        System.out.println(user);
        String[] hobbys = user.getHobby();
        for (String str:hobbys
             ) {
            System.out.println(str);
        }
    }
}
//输出结果
2019-07-03 16:56:39.609  INFO 5596 --- [           main] com.example.demo.DemoApplicationTests    : Started DemoApplicationTests in 3.887 seconds (JVM running for 4.7)
User(userName='张三/n', mobile=18393948482, pwd=123456, age=25, hobby=[吃饭, 睡觉, 打豆豆], map={k1=123456, k2=456789})
2019-07-03 16:56:39.851  INFO 5596 --- [       Thread-3] o.s.s.concurrent.ThreadPoolTaskExecutor  : Shutting down ExecutorService 'applicationTaskExecutor'


application.yml配置文件



yaml语法介绍


  1. k:(空格)v:表示一对键值对(空格必须有);
  2. 以空格的缩进来控制层级关系;只要是左对齐的一列数据,都是同一个层级的;
  3. 属性和值也是大小写敏感;
  4. k:v:字面直接写;
  5. 字符串默认不用加上单引号或者双引号;
  6. "":双引号;不会转义字符串里面的特殊字符;特殊字符会作为本身想表示的意思 name:"zhangsan\nlisi":输出;zhangsan换行lisi
  7. '':单引号;会转义特殊字符,特殊字符最终只是一个普通的字符串数据
  8. ---:代表区块,将一个ymal文件分为多个文件


yaml基本用法


# 字面量(数字,字符串,布尔)
server:
  port: 8081
user:
  user-name: 张三
  age: 26
  mobile: 18369615874
  # 数组行内写法
  # hobby: [吃饭,睡觉,打豆豆]
  # map行内写法
  # map: {k1: 吃饭,k2: 睡觉}
  pwd: 123456
  hobby:
    - 吃饭
    - 睡觉
    - 打豆豆
  map:
    k1: 吃饭
    k2: 睡觉
---
# 对象行内写法
user: {user-name: 张三,pwd: 123456,mobile: 1839394721,hobby: [吃饭,睡觉,打豆豆],map: {k1: 吃饭,k2: 睡觉},age: 26}


验证结果:


2019-07-03 17:21:32.074  INFO 32672 --- [           main] com.example.demo.DemoApplicationTests    : Started DemoApplicationTests in 3.201 seconds (JVM running for 3.923)
User(userName=张三, mobile=18369615874, pwd=123456, age=26, hobby=[吃饭, 睡觉, 打豆豆], map={k1=吃饭, k2=睡觉})
吃饭
睡觉
打豆豆


Springboot的两种配置文件语法详细介绍


目录
相关文章
|
8月前
|
Java 调度 Spring
SpringBoot实现多线程定时任务动态定时任务配置文件配置定时任务
SpringBoot实现多线程定时任务动态定时任务配置文件配置定时任务
714 0
|
8月前
|
Java 容器 Spring
SpringBoot:详解依赖注入和使用配置文件
SpringBoot:详解依赖注入和使用配置文件
181 0
|
6月前
|
Java Spring
Spring boot 运行服务jar外配置配置文件方式总结
Spring boot 运行服务jar外配置配置文件方式总结
977 0
|
2月前
|
Java 数据库连接 数据库
springboot启动配置文件-bootstrap.yml常用基本配置
以上是一些常用的基本配置项,在实际应用中可能会根据需求有所变化。通过合理配置 `bootstrap.yml`文件,可以确保应用程序在启动阶段加载正确的配置,并顺利启动运行。
256 2
|
2月前
|
Java Spring 容器
SpringBoot读取配置文件的6种方式,包括:通过Environment、@PropertySource、@ConfigurationProperties、@Value读取配置信息
SpringBoot读取配置文件的6种方式,包括:通过Environment、@PropertySource、@ConfigurationProperties、@Value读取配置信息
157 3
|
3月前
|
Java 测试技术 Spring
springboot学习三:Spring Boot 配置文件语法、静态工具类读取配置文件、静态工具类读取配置文件
这篇文章介绍了Spring Boot中配置文件的语法、如何读取配置文件以及如何通过静态工具类读取配置文件。
216 0
springboot学习三:Spring Boot 配置文件语法、静态工具类读取配置文件、静态工具类读取配置文件
|
4月前
|
消息中间件 NoSQL 安全
(转)Spring Boot加载 不同位置的 application.properties配置文件顺序规则
这篇文章介绍了Spring Boot加载配置文件的顺序规则,包括不同位置的application.properties文件的加载优先级,以及如何通过命令行参数或环境变量来指定配置文件的名称和位置。
128 0
|
5月前
|
Java 测试技术 Spring
Java SpringBoot 加载 yml 配置文件中字典项
Java SpringBoot 加载 yml 配置文件中字典项
51 0
|
6月前
|
Java Spring
解析Spring Boot中的配置文件与外部化配置
解析Spring Boot中的配置文件与外部化配置
|
7月前
|
Java
SpringBoot配置-配置文件分类,server.port修改端口,自定义修改配置内容
SpringBoot配置-配置文件分类,server.port修改端口,自定义修改配置内容