`
huangyongxing310
  • 浏览: 491984 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

spring cloud config client 使用

 
阅读更多
spring cloud config client 使用

client会从config service 中得到配置参数,config service 从git 中得到配置参数



<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
	http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>


	<groupId>com.midea</groupId>
	<artifactId>base</artifactId>
	<version>1.0-SNAPSHOT</version>
	<packaging>jar</packaging>
	<name>base</name>

	<!-- 设定仓库,按设定顺序进行查找. -->
	<!--<repositories> <repository> <id>public</id> <name>Team Nexus Repository</name> 
		<url>http://10.33.183.113:8081/nexus/content/groups/public</url> <snapshots> 
		<enabled>true</enabled> <updatePolicy>always</updatePolicy> </snapshots> 
		</repository> </repositories> <pluginRepositories> <pluginRepository> <id>public</id> 
		<name>Team Nexus Repository</name> <url>http://10.33.183.113:8081/nexus/content/groups/public</url> 
		<snapshots> <enabled>true</enabled> <updatePolicy>always</updatePolicy> </snapshots> 
		</pluginRepository> </pluginRepositories> -->

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
	</properties>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.5.2.RELEASE</version>
	</parent>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dependencies</artifactId>
				<version>Dalston.SR1</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<dependencies>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-config-client</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-config</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>
		<!-- <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId> 
			</dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-client</artifactId> 
			</dependency> -->

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-eureka</artifactId>
		</dependency>

		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger2</artifactId>
			<version>2.4.0</version>
			<exclusions>
				<exclusion>
					<groupId>org.slf4j</groupId>
					<artifactId>slf4j-api</artifactId>
				</exclusion>
			</exclusions>
		</dependency>

		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger-ui</artifactId>
			<version>2.4.0</version>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-log4j2</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter</artifactId>
			<exclusions>
				<exclusion>
					<groupId>org.springframework.boot</groupId>
					<artifactId>spring-boot-starter-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
			<exclusions>
				<exclusion>
					<groupId>org.springframework.boot</groupId>
					<artifactId>spring-boot-starter-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
	</dependencies>
	<build>

	</build>
</project>





server.port=8767
##logging.pattern.level=INFO
#
##服务器路径
#server.context-path=/eurekaServer

#服务名
spring.application.name=configClient
spring.cloud.config.label=master
spring.cloud.config.profile=test
#到configServicej里得到配置参数
spring.cloud.config.uri= http://localhost:8888/

#默认是需要身份认证的,一些页面不能访问,加上后所有页面不需要认证,都可以访问。
management.security.enabled=false





package com;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.context.config.annotation.RefreshScope;



@SpringBootApplication //spring boot 开启应用
//@RefreshScope //指示Config客户端在服务器参数刷新时,也刷新注入的属性值,
public class Application {

	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}

}





package com.controller;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

import io.swagger.annotations.Api;

@Api(value = "/Test", description = "测试接口", tags = "TestController")
@RequestMapping("/Test")
@RestController
@RefreshScope //指示Config客户端在服务器参数刷新时,也刷新注入的属性值,
public class TestController {
	final static Logger logger = LogManager.getLogger(TestController.class);

	//得到配置参数放入变量foo中
	@Value("${foo}")
    String foo;
	
	@RequestMapping(value = "/test", method = RequestMethod.GET)
	public String test() {
		logger.info("test");

		logger.info("foo == " + foo);
		return foo;
	}
}








动态刷新配置
对Conf客户端发一个POST请求http://localhost:8767/refresh,返回200 OK。
分享到:
评论

相关推荐

    spring cloud config client 服务配置中心 客户端

    6. **SpringCloudDemo-ConfigClient**: - 这个文件很可能是Spring Cloud Config Client的一个示例项目,它可能包含了配置客户端的代码、配置文件以及如何集成和测试的说明。 - 通过查看和分析这个项目,开发者...

    spring cloud config

    **二、Spring Cloud Config Client** Config Client 是配置服务器的消费者,它是一个轻量级的客户端库,可以嵌入到每个微服务中。客户端通过与 Config Server 通信,获取所需的配置信息。当 Config Server 中的配置...

    spring cloud config、bus源码

    本文将对 Spring Cloud Config/Bus 的源码进行解读,涵盖 Server 端、Client 端、Bus 的运行原理等方面的内容。 一、初始化 在 Spring Cloud Config/Bus 中,初始化的过程主要是围绕 ...

    Spring Cloud Config Demo

    这个"Spring Cloud Config Demo"是一个实例,用于演示如何使用Spring Cloud Config进行配置管理。 在Spring Cloud Config中,主要涉及两个核心组件:Config Server(配置服务器)和Config Client(配置客户端)。...

    Spring Cloud Config(本地配置中心或git配置中心)

    通过以上步骤,你可以成功搭建并使用Spring Cloud Config。无论是本地配置中心还是Git配置中心,它都能有效地帮助你在微服务架构中管理和分发配置,提高应用的可维护性和灵活性。理解并掌握这些知识点,将对你的...

    spring-cloud config详细demo

    这个详细Demo将涵盖Spring Cloud Config的使用方法,包括集群搭建和与Eureka服务发现组件的集成。让我们深入探讨这些关键知识点。 首先,Spring Cloud Config 由两个主要部分组成:Config Server 和 Config Client...

    SpringCloud——分布式配置中心(Spring Cloud Config)

    Spring Cloud Config 由两个主要组件组成:Config Server 和 Config Client。Config Server 作为一个中央存储库,负责管理所有微服务的配置,而 Config Client 是一个客户端库,安装在每个需要使用配置的服务上,...

    《深入理解Spring Cloud与微服务构建》学习笔记(二十)~配置中心Spring Cloud Config

    1. 配置客户端:Spring Cloud Config Client是用于应用获取配置的服务,它会在启动时向Config Server请求相应的配置信息,并在接收到新配置时自动刷新应用的配置。 2. 配置刷新:当配置发生变化时,客户端可以监听...

    spring cloud config 代码示例

    Spring Cloud Config 是一个用于管理应用配置的微服务框架,它允许开发者在开发、测试和生产环境中,以集中化、外部化的方式管理应用的配置。这个框架使得配置可以在不同的环境之间轻松切换,为分布式系统的配置管理...

    如何用Spring Cloud Config统一配置管理,0基础!!易懂!!.html

    在微服务架构中,每个服务都有自己的配置文件,这些配置文件中包含了数据库连接信息、消息队列配置...Spring Cloud Config Client的配置 使用Git仓库存储配置 动态刷新配置 安全性和高可用性 示例项目代码 常见问题解答

    spring cloud中文版【Spring Cloud Config】--spring cloud中文文档.pdf

    **客户端配置(Spring Cloud Config Client)** 这部分内容将介绍如何配置客户端,以便能够从配置服务端获取配置信息。 **配置第一次引导(Config First Bootstrap)** 配置第一次引导是指配置服务首次启动时的配置过程...

    微服务框架 springcloud config 自动刷新远程svn配置代码示例

    3. 启用配置监听,通过设置`spring.cloud.config.client.refresh.enabled=true`。 在`spring-cloud-config-client-refresh-dev`中,可能包含的是针对开发环境的配置,如不同的环境变量或特定的配置项。这些配置可以...

    springcloud config配置中心

    除了基本的配置管理,Spring Cloud Config 还可以与其他Spring Cloud组件结合使用,如Eureka(服务发现)、Spring Cloud Bus(用于广播配置变化)等,实现更复杂的服务治理功能。 综上所述,Spring Cloud Config 是...

    spring cloud config 和 bus 源码解读

    在本文中,将对Spring Cloud Config的Server端和Client端源码进行解读,同时涉及Spring Cloud Bus的运行原理。内容主要基于Spring Cloud Config的B版本和D版本,尽管初始化方式存在差异,但最终结果大致相同。 首先...

    06_SpringCloud Config 配置中心.md

    springcloud config分布式配置中心,需要注意gitee上创建的文件格式,特别注意不然 config client启动的时候就会报错误 说@value("${name}")的值找不到

    spring boot+spring cloud视频教学下载全套

    ├49 7.8 Spring Cloud Config 与Eureka配合使用.avi ├5 4.1服务发现与服务注册.avi ├50 7.9 Spring Cloud Config配置属性刷新之手动刷新.avi ├51 7.10 Spring Cloud Config配置属性刷新之自动刷新.avi ├52 7.11...

    spring-cloud-config + spring-cloud-bus-amqp实现分布式集群配置动态更新

    完成后,我们需要在Spring Cloud Config Server和所有使用Config Client的应用中配置RabbitMQ的相关连接信息。 在配置更新时,假设我们需要修改一个服务的配置,只需要在`config-repo`中更新对应的配置文件,并推送...

    spring cloud config微服务配置中心

    本文将深入探讨Spring Cloud Config的相关知识点,包括其核心概念、工作原理、主要功能以及如何在实际项目中进行部署和使用。 1. **核心概念** - **配置服务器(Config Server)**:Spring Cloud Config Server是...

Global site tag (gtag.js) - Google Analytics