springboo读取配置文件

SpringBoot读取配置文件

1、springboot的配置文件默认为application.properties。springboot启动时会自动加载根目录下的application.properties文件

2、如果参数配置直接放在application.properties中,则可以使用@Component和@Value注解搭配使用。
在这里插入图片描述
如果不想在每个属性上都使用@Value注解,则可以使用@ConfigurationProperties(prefix = “home”)注解,该注解必须需要指定prefix前缀,配置文件中的名字要和类中的属性名保持一致,属性要提供get/set方法。
使用@ConfigurationProperties注解时,必须要搭配@Component或者@EnableConfigurationProperties使用(它们的作用就是将 配置注入容器),否则仅仅使用@ConfigurationProperties是无法被spring管理的
sprintBoot1.5之后,@ConfigurationProperties取消了location,所以需要引入依赖包:

<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-configuration-processor</artifactId>
        <optional>true</optional>
</dependency>

在这里插入图片描述
在这里插入图片描述
3、如果想读取自定义的配置文件,则需要使用@PropertySource(“classpath:/xxx.properties”)手动指定要读取的配置文件。同时可以搭配@Value或者@ConfigurationProperties注解使用

4、如果想根据不同的环境来读取不同的配置文件,可以使用spring.profiles.active属性
在springboot中多环境的配置文件名需要按照application-{pfofile}.properties的格式来命名,其中{profile}就是对应的环境标识,如:

  • application-dev.properties
  • application-test.properties
  • application-prepro.properties
  • application-pro.properties
    需要加载哪个配置文件,就在application.properties配置文件中通过spring.profiles.active来设置。spring.profiles.active=dev,即表示加载application-dev.properties配置文件。若加载多个配置文件,则用逗号隔开spring.profiles.active=dev,test,pro
5、@import注解:将一个或多个类注入ioc中,交给spring管理
public class A{
}

public class B{
}

@Import({A.class,B.class})
@Configuration
public class C {
}

对应的A和B就会被spring管理了

6、@ImportResource

加载外部的xml文件@ImportResource(locations = { “classpath:bean.xml” })

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值