@NacosValue注解的用法

1、项目案例

 @NacosValue(value = "${order.url}", autoRefreshed = true)
 private String orderUrl;

2、用法介绍

  • 在SpringCloud工程中,可以使用@RefreshScope+@Value实现配置文件内容变更后的动态刷新。
  • 在SpringBoot工程中,可以使用@NacosValue来实现配置文件内容变更后的动态刷新。

@NacosValue的使用
引入依赖:

>
	>com.alibaba.boot>
	>nacos-config-spring-boot-starter>
	>0.2.12>
>
配置文件增加配置:

nacos:
  config:
    server-addr: 127.0.0.1:8848  //配置nacos配置中心的服务地址
    bootstrap:
      enable: true
      log:
        enable: true
    data-id: order-service
    type: yaml
    auto-refresh: true # 开启自动刷新

@NacosValue的例子:

package com.morris.order.controller;

import com.alibaba.nacos.api.config.annotation.NacosValue;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("order")
public class NacosValueController {

    @NacosValue(value = "${user.age}", autoRefreshed = true)
    private Integer age2;

    @GetMapping("age2")
    public Integer getAge2() {
        return age2;
    }

}

注意在SpringCloud项目中不能使用@NacosValue注解,虽然这个注解存在,但是其源码的实现不存在。

3、案例详情

@NacosValue注解的用法_第1张图片
@NacosValue注解的用法_第2张图片
@NacosValue注解的用法_第3张图片
@NacosValue注解的用法_第4张图片
可以发现我们已经成功去到了配置中心里面的值,到此自动刷新配置已完成。

你可能感兴趣的:(SpringBoot,+,SpringCloud,+,SSM,java,spring,boot,spring)