首页 > 编程语言 > 详细

spring cloud 使用nacos 作为配置中心

时间:2020-04-05 02:23:14      阅读:304      评论:0      收藏:0      [点我收藏+]

概要

nacos 可以作为服务注册发现中心,也可以作为配置中心,作为配置中心的时候,系统的配置可以做到自动刷新,即当配置服务器的数据发生更改时,客户端的配置会进行自动的更新。

实现步骤

1.修改maven 配置

 <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>

2.增加bootstrap.properties

这个是文件是启用nacos作为配置中心的文件。

技术分享图片

 

图标有朵云,表示启用nacos 作为配置中心。

//配置nacos作为配置服务器
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
//配置模式为开发模式
spring.profiles.active=dev
//nacos配资使用yml 作为扩展名
spring.cloud.nacos.config.file-extension=yml
//下面的配置时公共配置,即可以在不同应用之间进行共享。
spring.cloud.nacos.config.shared-dataids=common.yml
spring.cloud.nacos.config.refreshable-dataids=common.yml

 springcloud 是使用配置优先的。

比如我现在有一个应用为:

jpaas-form

系统会按照如下的配置进行查找

1.先找 jpaas-form-dev.yml,如果找到了则返回,如果找不到则进行下一步。

2.查找 jpaas-form.yml 如果找不到,则查找共享的配置,根据上面的配置他会查找common.yml

技术分享图片

 

 

 这里配置格式,可以是 yaml 或者 properties

 

3.在程序中使用

@RefreshScope
public class SysSeqIdController extends BaseController<SysSeqId> {

    
    @Value( value = "${user.name}")
    private String username="";

    @Value( value = "${sys.name}" )
    private String uploaddir="";

    @Autowired
    private User user;

@RefreshScope 是实现自动刷新配置。

user.name,sys.name 是配置的参数

可以使用 yml 的格式进行配置。

技术分享图片

 

 我们还可以配置对象的方式进行参数进行注入,使用相当方便。

比如:

user:
    name: ray
    address: guangzhou

编写用户代码如下:

@Data
@Component
@ConfigurationProperties(prefix = "user")
public class User {
    private String name="";
    private String address="";
}

这样 数据就会自动配置好用户对象,使用下面的代码进行注入。

@Autowired
private User user;

 同样,这个对象在配置中心修改后也能进行自动刷新。

 

spring cloud 使用nacos 作为配置中心

原文:https://www.cnblogs.com/yg_zhang/p/12635106.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!