02Spring Boot配置文件详解

自定义属性

  1. 在src/main/java/resources目录下创建一个application.properties或application.yml
  2. 在application.yml自定义一组属性
  1. my:
  2. name: boot
  3. age: 12
  1. 读取配置文件的值只需要加@Value("${属性名}")
  1. @RestController
  2. public class ConfigController {
  3. @Value("${my.name}")
  4. private String name;
  5. @Value("${my.age}")
  6. private int age;
  7. @RequestMapping(value = "/config")
  8. public String config(){
  9. return name+":"+age;
  10. }
  11. }
  1. 启动项目,访问:localhost:8080/config

将配置文件的属性赋给实体类

  1. 当配置中有很多属性时,可以把这些属性作为字段创建javabean,并将属性值赋予给他们
  1. my:
  2. name: boot
  3. age: 20
  4. # ${random} ,用来生成各种不同类型的随机值。
  5. number: ${random.int}
  6. uuid: ${random.uuid}
  7. max: ${random.int(10)}
  8. value: ${random.value}
  9. greeting: hi,i'm ${my.name}
  1. 创建一个javabean,并添加注解@ConfigurationProperties(prefix = "my")
  1. @ConfigurationProperties(prefix = "my")
  2. public class ConfigBean {
  3. private String name;
  4. private int age;
  5. private int number;
  6. private String uuid;
  7. private int max;
  8. private String value;
  9. private String greeting;
  10. get...set...省略
  11. 使用idea自动生成get,settoString
  12. }
  1. 在应用类或启动类上增加注解
  1. @EnableConfigurationProperties({ ConfigBean.class })
  1. 添加ConfigBeanController类
  1. @RestController
  2. public class ConfigBeanController {
  3. @Autowired
  4. private ConfigBean configBean;
  5. @RequestMapping("/configbean")
  6. public String config(){
  7. // 输出所有字段的值
  8. return configBean.toString();
  9. }
  10. }
  1. 启动项目,访问http://localhost:8080/configbean

自定义配置文件

  1. application配置文件是系统默认的,我们可以添加其他名称的配置文件,如test.properties(不能是test.yml,测试读不到数据)
  1. com.boot.name=boot
  2. com.boot.age=20
  1. 添加TestBean,需要指定文件名和前缀
  1. @Configuration
  2. @PropertySource(value = "classpath:test.properties")
  3. @ConfigurationProperties(prefix = "com.boot")
  4. public class TestBean {
  5. private String name;
  6. private int age;
  7. 省略get,set,tostring
  8. }
  1. 添加TestBeanController
  1. @EnableConfigurationProperties({TestBean.class})
  2. @RestController
  3. public class TestBeanController {
  4. @Autowired
  5. private TestBean testBean;
  6. @RequestMapping("/testconfig")
  7. public String testConfig() {
  8. return testBean.toString();
  9. }
  10. }
  1. 启动项目,返回http://localhost:8080/testconfig

多个环境配置文件

  1. 在现实的开发环境中,我们需要不同的配置环境;格式为application-{profile}.properties,其中{profile}对应你的环境标识,比如
  • application-test.properties:测试环境
  • application-dev.properties:开发环境
  • application-prod.properties:生产环境
  1. 实际使用的配置文件,通过在application.yml中增加:
  1. spring:
  2. profiles:
  3. active: dev
  1. 添加application-dev.yml
  1. my:
  2. name: dev
  3. age: 11
  4. #server:
  5. # port: 8082
  1. 启动程序,访问http://localhost:8080/config,发现读取的是application-dev.yml中的配置
  2. 访问http://localhost:8080/configbean,会发现,当application-dev.yml和application.yml中有重名的字段时,前者会覆盖后者的值。
  1. ConfigBean{name='dev', age=11, number=-1422131996, uuid='5bebc511-f1a4-4f2b-95ed-540e4b48e8bd', max=0, value='8b96a5bbde492fb189e4fa52573c9caf', greeting='hi,i'm dev'}

02Spring Boot配置文件详解的更多相关文章

  1. Spring Boot 配置文件详解

    Spring Boot配置文件详解 Spring Boot提供了两种常用的配置文件,分别是properties文件和yml文件.他们的作用都是修改Spring Boot自动配置的默认值.相对于prop ...

  2. (转) SpringBoot非官方教程 | 第二篇:Spring Boot配置文件详解

    springboot采纳了建立生产就绪spring应用程序的观点. Spring Boot优先于配置的惯例,旨在让您尽快启动和运行.在一般情况下,我们不需要做太多的配置就能够让spring boot正 ...

  3. SpringBoot非官方教程 | 第二篇:Spring Boot配置文件详解

    转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot2-config-file/ 本文出自方志朋的博客 ...

  4. Spring Boot配置文件详解-ConfigurationProperties和Value优缺点-(转)好文

    文章转自 http://www.cnblogs.com/itdragon/p/8686554.html Spring Boot提供了两种常用的配置文件,分别是properties文件和yml文件.他们 ...

  5. 史上最全的Spring Boot配置文件详解

    Spring Boot在工作中是用到的越来越广泛了,简单方便,有了它,效率提高不知道多少倍.Spring Boot配置文件对Spring Boot来说就是入门和基础,经常会用到,所以写下做个总结以便日 ...

  6. Spring boot 配置文件详解 (properties 和yml )

    从其他框架来看 我们都有自己的配置文件, hibernate有hbm,mybatis 有properties, 同样, Spring boot 也有全局配置文件. Springboot使用一个全局的配 ...

  7. Spring boot 入门二:Spring Boot配置文件详解

    一.自定义属性 当我们创建一个springboot项目的时候,系统默认会为我们在src/main/java/resources目录下创建一个application.properties.同时也支持ym ...

  8. Spring Boot☞ 配置文件详解:自定义属性、随机数、多环境配置等

    自定义属性与加载 我们在使用Spring Boot的时候,通常也需要定义一些自己使用的属性,我们可以如下方式直接定义: application-dev.yml com.didispace.blog: ...

  9. Spring Boot配置文件详解:自定义属性、随机数、多环境配置

    自定义属性与加载 我们在使用Spring Boot的时候,通常也需要定义一些自己使用的属性,我们可以如下方式直接定义: application-dev.yml com.didispace.blog: ...

随机推荐

  1. Oracle ADDM报告生成和性能分析

    我写的SQL调优专栏:https://blog.csdn.net/u014427391/article/category/8679315 对于局部的,比如某个页面列表sql,我们可以使用Oracle的 ...

  2. 安装Adobe时出现Adobe Application Manager丢失或损坏解决方法

    很多朋友在安装Adobe系列产品时出现Adobe Application Manager丢失或损坏,这是由于上次安装的Adobe产品没有正确卸载,导致这次安装失败.那么如何解决这一问题呢? 1.下载安 ...

  3. LogcatHelperDemo【应用log信息保存成本地文件】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 简单记录下LogcatHelper的使用,并对原有代码进行了修改[因为保存到应用内的目录中不需要申请权限,所以去掉保存到SD的功能- ...

  4. ES 08 - 创建、查看、修改、删除、关闭Elasticsearch的index

    目录 1 创建index(配置mapping[映射]) 2 查看index 3 修改index 4 删除index 5 打开/关闭index 6 常见问题及解决方法 index相当于RDBMS(关系型 ...

  5. Jenkins集群搭建

    Jenkins的目的是加快CI/CD的步伐,集群的搭建也不是必须的,当一台服务器的构建速度受到限制下,可以考虑使用主从并发构建,来加快构建速度.作为一款超级管家的角色,Jenkins的资料非常多,Je ...

  6. 『集群』006 Slithice 后期改进 和 Slithice可能存在的BUG

    Slithice 后期改进 和 Slithice可能存在的BUG Slithice 可能存在的 BUG: >Slithice 暂时 没有 对 循环调度 进行控制:不正确的 配置 可能导致 调度死 ...

  7. springboot~环境搭建与Helloworld

    转了,非转了 只是项目需要,从.net到java,以后可以学习java的思想把它应用到.net上来,让咱们的.net越来越强大,springbool是一个强大的框架,几乎有了你想要的所有功能模块,大叔 ...

  8. Kafka、ActiveMQ、RabbitMQ、RocketMQ 区别以及高可用原理

    为什么使用消息队列 其实就是问问你消息队列都有哪些使用场景,然后你项目里具体是什么场景,说说你在这个场景里用消息队列是什么? 面试官问你这个问题,期望的一个回答是说,你们公司有个什么业务场景,这个业务 ...

  9. Django-restframework 之权限源码分析

    Django-restframework 之权限源码分析 一 前言 上篇博客分析了 restframework 框架的认证组件的执行了流程并自定义了认证类.这篇博客分析 restframework 的 ...

  10. Lucene配置步骤详解

    Lucene配置步骤说明: 1.搭建环境: 2.创建索引库: 3搜索索引库. Lucene配置步骤: 第一部分:搭建环境(创建环境导入jar包) 前提:已经创建好了数据库(直接导入book.sql文件 ...