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"));
  }
}


相关文章
|
4月前
|
Java 容器
SpringBoot读取resources下的文件以及resources的资源路径
SpringBoot读取resources下的文件以及resources的资源路径
119 0
|
4月前
|
Java
SpringBoot文件上传单文件多文件上传
SpringBoot文件上传单文件多文件上传
39 0
|
28天前
|
XML 前端开发 Java
基于SpringBoot 3.3实现任意文件在线预览功能的技术分享
【8月更文挑战第30天】在当今的数字化办公环境中,文件在线预览已成为提升工作效率、优化用户体验的重要功能之一。无论是文档、图片、PDF还是代码文件,用户都期望能够直接在浏览器中快速查看而无需下载。本文将围绕如何在Spring Boot 3.3框架下实现这一功能,分享一系列技术干货,助力开发者高效构建文件预览服务。
133 2
|
2月前
|
存储 前端开发 Java
SpringBoot使用云端资源url下载文件的接口写法
在Spring Boot中实现从云端资源URL下载文件的功能可通过定义REST接口完成。示例代码展示了一个`FileDownloadController`,它包含使用`@GetMapping`注解的方法`downloadFile`,此方法接收URL参数,利用`RestTemplate`下载文件,并将文件字节数组封装为`ByteArrayResource`返回给客户端。此外,通过设置HTTP响应头,确保文件以附件形式下载。这种方法适用于从AWS S3或Google Cloud Storage等云服务下载文件。
293 7
|
1月前
|
JavaScript 前端开发 easyexcel
基于SpringBoot + EasyExcel + Vue + Blob实现导出Excel文件的前后端完整过程
本文展示了基于SpringBoot + EasyExcel + Vue + Blob实现导出Excel文件的完整过程,包括后端使用EasyExcel生成Excel文件流,前端通过Blob对象接收并触发下载的操作步骤和代码示例。
217 0
基于SpringBoot + EasyExcel + Vue + Blob实现导出Excel文件的前后端完整过程
|
1月前
|
Java Linux C++
【Azure 应用服务】App Service For Linux 部署Java Spring Boot应用后,查看日志文件时的疑惑
【Azure 应用服务】App Service For Linux 部署Java Spring Boot应用后,查看日志文件时的疑惑
|
1月前
|
存储 Java API
SpringBoot + MinIO 实现文件切片极速上传技术
【8月更文挑战第19天】在现代互联网应用中,文件上传是一个常见且重要的功能。然而,随着文件体积的增大,传统的文件上传方式往往面临效率低下、耗时过长等问题。为了提升大文件上传的速度和效率,我们可以采用文件切片上传技术,并结合SpringBoot和MinIO来实现这一功能。
138 0
|
1月前
|
Java
Java SpringBoot FTP 上传下载文件
Java SpringBoot FTP 上传下载文件
79 0
|
1月前
|
JavaScript Java
SpringBoot 下载文件
SpringBoot 下载文件
28 0
|
1月前
|
存储 运维 Java
SpringBoot使用log4j2将日志记录到文件及自定义数据库
通过上述步骤,你可以在Spring Boot应用中利用Log4j2将日志输出到文件和数据库中。这不仅促进了良好的日志管理实践,也为应用的监控和故障排查提供了强大的工具。强调一点,配置文件和代码的具体实现可能需要根据应用的实际需求和运行环境进行调优和修改,始终记住测试配置以确保一切运行正常。
329 0