springboot项目集成Nacos以动态配置文件

<dependency>
    <groupId>com.alibaba.boot</groupId>
    <artifactId>nacos-config-spring-boot-starter</artifactId>
    <version>0.2.1</version>
</dependency>

配置文件中添加配置

#nacos配置中心
nacos.config.server-addr=119.22.91.21:8848

直接注入的方式

然后在启动类上添加注解

@NacosPropertySources(value = {
        @NacosPropertySource(dataId = "consumer-server",autoRefreshed = true),
        @NacosPropertySource(dataId = "provider-dubbo",autoRefreshed = true),
        @NacosPropertySource(dataId = "email",autoRefreshed = true),
        @NacosPropertySource(dataId = "system",autoRefreshed = true),
})

然后在需要注入参数的地方直接如此注入参数即可;

@NacosValue(value = "${server.port}",autoRefreshed = true)
private String port;

将配置文件添加为pojo的注入

配置样例

port=huatian@163.com
host=1467
key=aoiZ9812LA82*l1
useAuth=true
user=huatian@163.com
from=huatian@163.com

@NacosConfigurationProperties注解

@Data
@Configuration
@NacosConfigurationProperties(dataId = "email",autoRefreshed = true)
public class EmailConfig {
   private String port;
   private String host;
   private String key;
   private boolean useAuth;
   private String user;
   private String from;

   // 这种配置只能说是创建一个单例bean,实际上云端即使更新了这里也不会更新,真正起效的只能是多例了
   @Bean(name = "emailConf")
   public EmailConf getConf(){
     return BeanUtil.copyProperties(this,EmailConf.class);
   }

   // 如此每次拿到的就是新生成的,当然你把this直接返回也可以
   public EmailConf getConfs(){
      return BeanUtil.copyProperties(this,EmailConf.class);
   }
}

通过 curl http请求动态更新配置

通过调用 Nacos Open API 向 Nacos server 发布配置:dataId 为example,内容为useLocalCache=true

curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=example&group=DEFAULT_GROUP&content=useLocalCache=true"

睡觉了!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值