博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring cloud config 入门
阅读量:5923 次
发布时间:2019-06-19

本文共 6326 字,大约阅读时间需要 21 分钟。

简介

Spring cloud config 分为两部分 server client
  • config-server 配置服务端,服务管理配置信息
  • config-client 客户端,客户端调用server端暴露接口获取配置信息

config-server

创建config-server

首先创建工程.

文件结构:

├── config-server.iml├── pom.xml└── src    ├── main    │   ├── java    │   │   └── com    │   │       └── lkl    │   │           └── springcloud    │   │               └── config    │   │                   └── server    │   │                       └── Application.java    │   └── resources    │       ├── application.properties │ └── bootstrap.properties └── test └── java

 

pom.xml内容:

4.0.0
org.springframework.boot
spring-boot-starter-parent
1.2.3.RELEASE
com.lkl.springcloud
spring-cloud-config-server
1.0-SNAPSHOT
org.springframework.cloud
spring-cloud-config
1.0.4.RELEASE
pom
import
org.springframework.cloud
spring-cloud-starter-config
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-actuator
org.springframework.cloud
spring-cloud-config-server
org.springframework.boot
spring-boot-maven-plugin

 

创建启动类 

Application.

package com.lkl.springcloud.config.server;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.EnableAutoConfiguration;import org.springframework.cloud.config.server.EnableConfigServer;import org.springframework.context.annotation.Configuration; import org.springframework.web.bind.annotation.RestController; /** * Created by liaokailin on 16/4/28. */ @Configuration @EnableAutoConfiguration @RestController @EnableConfigServer public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }

 

其中 @EnableConfigServer为关键注解

resources文件下创建application.properties

server.port=8888

 

  • application:表示应用名称,在client中通过spring.config.name配置
  • profile:表示获取指定环境下配置,例如开发环境、测试环境、生产环境 默认值default,实际开发中可以是 dev、test、demo、production等
  • label: git标签,默认值master

如果application名称为foo,则可以采用如下方式访问:

 

只要是按照上面的规则配置即可访问.

config-client

创建config-client

目录结构如下:

├── pom.xml├── spring-cloud-config-client.iml└── src    ├── main    │   ├── java    │   │   └── com    │   │       └── lkl    │   │           └── springcloud    │   │               └── config    │   │                   └── client    │   │                       └── Application.java    │   └── resources    │       └── bootstrap.yml └── test └── java

 

pom.xml

4.0.0
com.lkl.springcloud
spring-cloud-config-client
1.0-SNAPSHOT
org.springframework.boot
spring-boot-starter-parent
1.2.3.RELEASE
org.springframework.cloud
spring-cloud-starter-parent
1.0.1.RELEASE
pom
import
org.springframework.boot
spring-boot-starter-web
org.springframework.cloud
spring-cloud-config-client
org.springframework.boot
spring-boot-starter-actuator
org.springframework.boot
spring-boot-starter-test
test
spring-milestones
Spring Milestones
http://repo.spring.io/milestone
false
spring-milestones
Spring Milestones
http://repo.spring.io/milestone
false
org.springframework.boot
spring-boot-maven-plugin

创建启动类Application.java

package com.lkl.springcloud.config.client;import org.springframework.beans.factory.annotation.Value;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * Created by liaokailin on 16/4/28. */ @SpringBootApplication @RestController public class Application { @Value("${name:World!}") String bar; @RequestMapping("/") String hello() { return "Hello " + bar + "!"; } public static void main(String[] args) { SpringApplication.run(Application.class, args); } }

 

创建bootstrap.properties文件,其内容如下:

spring.application.name: foospring.cloud.config.env:defaultspring.cloud.config.label:master spring.cloud.config.uri:http://localhost:8888

其中 spring.application.name 为应用名称,spring.cloud.config.uri 配置config-server暴露的获取配置接口,其默认值为http://localhost:8888 

第二三项配置在前面已经提到过,配置的都为默认值,因此bootstrap.properties只需要配置应用名即可.

运行

访问 http://localhost 得到 `Hello liaokailin` 获取到git上的配置信息访问 http://localhost/env 得到所有的配置信息,可以发现获取配置信息成功.
{profiles: [ ],configService:https://github.com/liaokailin/config-repo/foo.properties: {name: "liaokailin", foo: "devoxxfr" }, configService:https://github.com/liaokailin/config-repo/application.yml: { info.description: "Spring Cloud Samples--lkl", info.url: "https://github.com/spring-cloud-samples", eureka.client.serviceUrl.defaultZone: "http://localhost:8761/eureka/" }, commandLineArgs: { spring.output.ansi.enabled: "always" }, servletContextInitParams: { }, ...}

 

ok ~ it’s work ! more about is 

 

http://blog.csdn.net/liaokailin/article/details/51307215

 

转载于:https://www.cnblogs.com/softidea/p/6027744.html

你可能感兴趣的文章
【干货】界面控件DevExtreme视频教程大汇总!
查看>>
闭包 !if(){}.call()
查看>>
python MySQLdb安装和使用
查看>>
Java小细节
查看>>
poj - 1860 Currency Exchange
查看>>
chgrp命令
查看>>
Java集合框架GS Collections具体解释
查看>>
洛谷 P2486 BZOJ 2243 [SDOI2011]染色
查看>>
linux 笔记本的温度提示
查看>>
(转)DOTA新版地图6.78发布:大幅改动 增两位新英雄
查看>>
Solaris 10u11 安装python2.7.10
查看>>
我的友情链接
查看>>
工欲善其事必先利其器SecureCRT+VMware® Workstation_学习笔记
查看>>
文件和目录权限chmod,更改所有者和所属组chown,umask,隐藏权限lsattr/chattr
查看>>
阿里PB级Kubernetes日志平台建设实践
查看>>
怎么把无线由器限
查看>>
Java实现的冒泡排序
查看>>
APP中的第三方“支付”功能该如何测试
查看>>
HDU 1907
查看>>
数值积分中的辛普森方法及其误差估计
查看>>