Springboot读取yml文件参数

简介: Springboot读取yml文件参数

几种数据格式

  1. 普通的值(数字,字符串,布尔)就是:key: value
  2. 对象、Map (属性和值) (键值对)
  3. 数组 (List、Set)

字符串默认不用加上单引号或者双引号;

"":双引号;不会转义字符串里面的特殊字符; name: “zhangsan \n lisi”:输出;zhangsan 换行 lisi

’’:单引号;会转义特殊字符 据 name: ‘zhangsan \n lisi’:输出;zhangsan \n lisi

# 对象、Map
person:
    age: 18
    name: Tom
# 用- 值表示数组中的一个元素    
hands:
   - left
   - right

@value方式

server:
  port: 9091
@Value("${server.port}")
public String port; 
@Value("${tag}")
private String value
@Value("#{configProperties['tag.msgname']}")
private String value
@Value("${tag.msgname}")
private String value

value 值为空:

  • 使用static或final修饰
    private static String value; //错误
    private final String value; //错误
  • 类上没有加上@Component(或@service等)
  • 没有使用@Autowired注入而是通过new创建实例

@ConfigurationProperties方式

student:
    age: 18
    name: polly
@Component
@ConfigurationProperties(prefix = "student")
public class Student {
    private String name;
    private Integer age;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getAge() {
        return age;
    }
    public void setAge(Integer age) {
        this.age = age;
    }
    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}

@ConfigurationProperties读取参数,需要一个JavaBean 来专门映射配置

使用@ConfigurationProperties,需要配置一个prefix (前缀) 参数, 即写上 key 就可以了

@Environment方式

test:
    msg: a123
@Autowired
  private Environment env
  @RequestMapping(value = "index", method = RequestMethod.GET)
  public void index() {
      System.out.println(env.getProperty("test.msg"));
  }
}


相关文章
|
10天前
|
存储 前端开发 Java
Springboot静态资源映射及文件映射
在Spring Boot项目中,为了解决前端访问后端存储的图片问题,起初尝试通过静态资源映射实现,但发现这种方式仅能访问打包时已存在的文件。对于动态上传的图片(如头像),需采用资源映射配置,将特定路径映射到服务器上的文件夹,确保新上传的图片能即时访问。例如,通过`addResourceHandler("/img/**").addResourceLocations("file:E:\\myProject\\forum_server\\")`配置,使前端可通过URL直接访问图片。
Springboot静态资源映射及文件映射
|
3月前
|
网络协议 Java
springboot配置hosts文件
springboot配置hosts文件
70 11
|
3月前
|
存储 前端开发 JavaScript
|
3月前
|
存储 Java API
|
3月前
|
Java 应用服务中间件
SpringBoot获取项目文件的绝对路径和相对路径
SpringBoot获取项目文件的绝对路径和相对路径
169 1
SpringBoot获取项目文件的绝对路径和相对路径
|
存储 前端开发 Java
SpringBoot文件上传和下载
SpringBoot文件上传和下载
SpringBoot文件上传和下载
|
前端开发 Java Spring
SpringBoot文件上传下载
SpringBoot文件上传下载
267 0
SpringBoot文件上传下载
|
Java Apache 数据库连接
SpringBoot 文件上传/下载
有啥不懂的或者出错的可以在下面留言。 1. 文件上传 //上传路径 String folder = "C:\\code\\springboot-springsecurity\\security-demo\\src\\main\\java...
2469 0
|
Java
SpringBoot文件上传下载
项目中经常会有上传和下载的需求,这篇文章简述一下springboot项目中实现简单的上传和下载。 新建springboot项目,前台页面使用的thymeleaf模板,其余的没有特别的配置,pom代码如下: 4.
4159 0
|
25天前
|
JavaScript Java 测试技术
基于SpringBoot+Vue实现的留守儿童爱心网站设计与实现(计算机毕设项目实战+源码+文档)
博主是一位全网粉丝超过100万的CSDN特邀作者、博客专家,专注于Java、Python、PHP等技术领域。提供SpringBoot、Vue、HTML、Uniapp、PHP、Python、NodeJS、爬虫、数据可视化等技术服务,涵盖免费选题、功能设计、开题报告、论文辅导、答辩PPT等。系统采用SpringBoot后端框架和Vue前端框架,确保高效开发与良好用户体验。所有代码由博主亲自开发,并提供全程录音录屏讲解服务,保障学习效果。欢迎点赞、收藏、关注、评论,获取更多精品案例源码。
60 10