Spring Boot配置文件
来源:互联网 发布:济南java培训机构 编辑:程序博客网 时间:2024/06/08 05:48
本文参考自方志朋的博客: http://blog.csdn.net/forezp/article/details/70437576
特此感谢
一、 动态执行配置文件
如在boot的[classpath](http://blog.csdn.net/mrl6140x/article/details/78077942%20springclasspath%E8%AF%A6%E8%A7%A3)(classpath位置的详情介绍)下的resources/config/目录下存在三个配置文件- application.yml(springboot默认的主配置文件) - application-dev.yml(开发环境)- application-prod.properties(生产环境)
在 application.yml里添加
#动态执行配置文件 spring: profiles: active: dev #可以设为dev |prod 来执行相应的配置文件
总结:可以同时支持properties和yml格式的文件。当主文件和执行的配置存在某一冲突的时候,以执行的配置为主(即会覆盖主文件中相同的配置)
二、自定义属性
可以在application中自定义属性:
my: name:"Mao" uuid:${random.uuid} #random生成各种不同类型的随机值
自定义属性可以装配给Bean和成员变量,具体情况可分为一下几种:
1.直接读取值 使用@Value(“${属性名}”):
@RestControllerpublic class MiyaController { @Value("${my.name}") private String name; @Value("${my.age}") private int uuid; @RequestMapping(value = "/miya") public String miya(){ return name+":"+uuid; }}
2.赋值给一个实体类
怎么讲这些属性赋于给一个javabean 呢,首先创建一个javabean :
@ConfigurationProperties(prefix = "my")@Componentpublic class ConfigBean { private String name; private String uuid; 省略了getter setter....
注意:需要加个注解@ConfigurationProperties,并加上它的prrfix。另外@Component可加可不加。必要时候需要添加spring-boot-configuration-processor依赖,一定要含有getter和setter方法。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional></dependency>
在其他类中引用需要利用@autowired来获取,直接new一个对象不能 获取值。
另外需要在应用类或者application类,加EnableConfigurationProperties注解。(貌似不需要添加这个注释)@RestController
@EnableConfigurationProperties({ConfigBean.class})
public class LucyController {
@Autowired
ConfigBean configBean;
@RequestMapping(value = "/lucy")public String miya(){ return configBean.getGreeting()+" >>>>"+configBean.getName()+" >>>>"+ configBean.getUuid()+" >>>>"+configBean.getMax();}
3.上面介绍的是我们都把配置文件写到application.yml中。有时我们不愿意把配置都写到application配置文件中,这时需要我们自定义配置文件,比如
test.properti
@Configuration@PropertySource(value = "classpath:config/test.properties") //注意要添加config,因为classpath:只指定到resources/@ConfigurationProperties(prefix = "com.forezp")public class User { private String name; private int uuid; 省略getter和setter}
- spring-boot配置文件
- Spring Boot 配置文件模板
- Spring Boot属性配置文件
- spring boot 工程配置文件
- Spring boot 配置文件
- Spring boot读取配置文件
- spring boot配置文件
- spring boot (二) 配置文件
- spring-boot 配置文件
- spring Boot 配置文件详解
- Spring Boot之配置文件
- spring-boot 配置文件读取
- Spring Boot 配置文件介绍
- Spring boot 配置文件读取
- spring boot配置文件
- spring boot 读取配置文件
- spring boot 配置文件详解
- Spring Boot配置文件详解
- swf格式的视频不能出声的解决办法
- spring boot(3)-Rest风格接口
- php5.2.17安装libpng时报zlib的错误:libz.a(crc32.o): relocation R_X86_64_32 against `a local symbol' can not
- sun.misc.BASE64Encoder找不到jar包的解决方法
- angularJs 购物车
- Spring Boot配置文件
- Java对空格的encode格式问题
- 最短路径(需要使用高精度整数)
- 卷积神经网络CNN经典模型整理Lenet,Alexnet,Googlenet,VGG,Deep Residual Learning,squeezenet
- HDU-2588-GCD
- 类的初始化操作
- Android App中通过JNI调用C/C++代码(二)
- spring使用aop时需要设置proxy-target-class="true" 否则无法依赖注入
- 最新版本sublime text3注册码