2-04-Nacos配置管理-配置热更新

所谓的热更新共有两种实现方式

1.@Value+@Refresh 针对单一类的配置热更新
2.@ConfigurationProperties+@Autowired,针对所有类的配置热更新

单一类配置热更新

优点:如果是原有的文件配置 仅需要增加一个注解即可
缺点:配置分布太散 不利于维护

@Service
@RefreshScope
public class UserService {

    @Value("${user.suffix}")
    String userSuffix;

    @Autowired
    private UserMapper userMapper;

    public User queryById(Long id) {
        User byId = userMapper.findById(id);
        byId.setUsername(byId.getUsername()+"用户统一后缀为 "+userSuffix);
        return byId;
    }
}

全局配置

优点:配置统一管理-维护方便
缺点:由原有文件配置修改而来的话-改动较大

@Getter
@Setter
@Component
@ConfigurationProperties(prefix = "develop")
public class GlobalConfig {
    String timefo;
}
@Autowired
GlobalConfig globalConfig;
LocalDateTime.now().format(DateTimeFormatter.ofPattern(globalConfig.getTimefo())));
posted @ 2023-08-14 19:37  356a  阅读(93)  评论(0编辑  收藏  举报