参考:sorry,全找不到了,当时没记录,最后后知后觉觉得应该记录,所以后面的都有在asfood父项目中的doc文件夹下记录,望见谅。

1. springconfig server

1.1. pom.xml

<!-- 父项目以来 -->

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
<scope>true</scope>
</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-config-server</artifactId>
</dependency>
</dependencies> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>
1.2 启动类
@EnableConfigServer
@SpringBootApplication
public class TomatoApplication {
public static void main(String[] args) {
SpringApplication.run(TomatoApplication.class, args);
}
}

1.3 配置

server:
port: 55590
spring:
application:
name: asfood-tomato
profiles:
active: dev
cloud:
config:
server:
git:
# 配置git仓库的地址 #访问地址: http://localhost:55590/{filename}/{env}/{branch}
uri: https://github.com/molyjao/mlims
# git仓库地址下的相对地址,可以配置多个,用,分割。
#search-paths: asfoodconfig
# git仓库的账号
#username: #jiu_shaan@163.com
# git仓库的密码
#password: #配置之后访问git配置需要输入用户名密码
security:
user:
name: tomato
password: tomato

启动工程,如果可以使用 http://localhost:55590/{文件名不带后面环境}/{环境}/{git分支}访问 ,并可以展示里面内容即可。

2. springcloud client

2.1 pom.xml
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
<scope>true</scope>
</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-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency> </dependencies> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>

2.2 启动类

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

控制层:

@RestController
@RefreshScope //刷新配置使用的注解,
public class KetchupController { //qqname为配置文件的内容的一个key,':'后面是默认值
@Value("${qqname:defaultqqname}")
private String str; @RequestMapping("/ketchup")
String hello() {
return "Hello " + str + "!";
}
}
2.3 配置文件:两部分bootstrap.yml和application.yml文件,由于bootstrap.yml加载最早,所以需要加载服务端配置文件内的内容需要优先加载。

bootstrap.yml

spring:
cloud:
config:
name: asfood
profile: dev
label: master
uri: http://localhost:55590/
#discovery:
enabled: true # 默认false,设为true表示使用注册中心中的configserver配置而不自己配置configserver的uri
serviceId: asfood-tomato # 指定config server在服务发现中的serviceId,默认为:configserver
#由于服务端配置了访问需要用户名和密码,所以此处也需要配置
username: tomato
password: tomato

application.yml

server:
port: 55591 spring:
application:
name: asfood-ketchup
profiles:
active: dev #日志
logging:
file: ./logs/ketchup.log management:
security:
enabled: false #actuator是否需要安全保证 默认为true 不加会报错

现在启动服务端,后启动客户端,可以访问就正常了,

如果客户端启动报错:找不到所配置的读取的文件中的key,  xxx placeholder ${xxx}  这个错误就是没有找到配置文件(保证不会手误,key写的不一样),如果此时你的服务端的页面访问配置文件,不能访问到配置文件中的内容,这个需要再次百度,如果是服务端可以访问到配置文件中的内容,这个时候需要检查客户端的服务端地址等的配置,检查服务端和客户端启动类的注释,一个是server一个是client还有问题百度吧,我也初学。。。还有个好网站,stackoverflow。

自动刷新配置文件访问: 客户端ip:port/refresh

有需要可以参考这里(在asfood-ketchup-config-client和asfood-tomato-config-server中):  https://github.com/molyjao/mlims.git

springboot+springcloud config的更多相关文章

  1. Springboot属性加载与覆盖优先级与SpringCloud Config Service配置

    参考官方文档:https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config. ...

  2. springcloud情操陶冶-springcloud config server(一)

    承接前文springcloud情操陶冶-springcloud context(二),本文将在前文基础上浅析下ConfigServer的工作原理 前话 根据前文得知,bootstrapContext引 ...

  3. SpringCloud-微服务配置统一管理SpringCloud Config(七)

    前言:对于应用,配制文件通常是放在项目中管理的,它可能有spring.mybatis.log等等各种各样的配置文件和属性文件,另外你还可能有开发环境.测试环境.生产环境等,这样的话就得一式三份,若是传 ...

  4. 【原创】SpringBoot & SpringCloud 快速入门学习笔记(完整示例)

    [原创]SpringBoot & SpringCloud 快速入门学习笔记(完整示例) 1月前在系统的学习SpringBoot和SpringCloud,同时整理了快速入门示例,方便能针对每个知 ...

  5. 带你入门SpringCloud统一配置 | SpringCloud Config

    前言 在微服务中众多服务的配置必然会出现相同的配置,如果配置发生变化需要修改,一个个去修改然后重启项目的方案是绝对不可取的.而 SpringCloud Config 就是一个可以帮助你实现统一配置选择 ...

  6. SpringBoot SpringCloud 热部署 热加载 热调试

    疯狂创客圈 Java 高并发[ 亿级流量聊天室实战]实战系列 [博客园总入口 ] 架构师成长+面试必备之 高并发基础书籍 [Netty Zookeeper Redis 高并发实战 ] Crazy-Sp ...

  7. springcloud Config 入门,带视频

    疯狂创客圈 Java 高并发[ 亿级流量聊天室实战]实战系列 [博客园总入口 ] 架构师成长+面试必备之 高并发基础书籍 [Netty Zookeeper Redis 高并发实战 ] 前言 Crazy ...

  8. springboot + springcloud +nacos实战

    首先从整个软件的功能和应用场景来说,nacos更像consul,而非eureka,nacos设计的时候自带的配置中心功能,让我们省下了去搞springcloud config的时间,但这里并不是说na ...

  9. SpringCloud学习笔记(二、SpringCloud Config)

    目录: 配置中心简介 SpringCloud Config服务端 SpringCloud Config客户端 动态配置属性bean 一些补充(源码分析):Spring事件监听.健康检查health() ...

随机推荐

  1. latin-1

    Latin1是ISO-8859-1的别名,有些环境下写作Latin-1.ISO-8859-1编码是单字节编码,向下兼容ASCII,其编码范围是0x00-0xFF,0x00-0x7F之间完全和ASCII ...

  2. ceph安装各种报错

    [ceph_deploy][ERROR ] RuntimeError: Failed to execute command: ceph-disk-activate –mark-init sysvini ...

  3. 搭建配置cacti,采集信息监控

    安装cactilamp环境[iyunv@Cacti ~]#service iptables stop //关闭防火墙服务[iyunv@Cacti ~]#chkconfig iptables off / ...

  4. IOS 发布被拒 PLA 1.2问题 整个过程介绍 01

    公司前端时间发布IOS APP ,但是遇到一些很麻烦的问题,就是一个让人摸不着头脑的问题. 问题: The Seller and Artist names associated with your a ...

  5. Git--之本地仓库

    VCS的历史 : Git是一款代码管理工具(Version Control System),傲视群雄,是目前世界上最先进的免费开源的分布式版本控制系统,没有之一! VCS版本控制系统(version ...

  6. canvas绘制多角形小练习

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. spring: ?.运算符

    ?.运算符 对于被调用方法的返回值来说,我们同样可以调用它的方法.例如,如果selectArtist()方法返回的是一个String,那么可以调用toUpperCase()将整个名字改为大写字母形式: ...

  8. 2017-02-20 安装Sql Server2016+配置Java环境

    昨天在安装Sql Server 2016时,在前面的规则检查结果中,出现“Polybase要求安装Oracle JRE7更新51(64位)或更高版本”规则失败的错误,如图 解决方案为,下载安装jdk, ...

  9. 《Advanced Bash-scripting Guide》学习(七):描述、列表和确定是否可以安装一个rpm包

    本文所选的例子来自于<Advanced Bash-scripting Gudie>一书,译者 杨春敏 黄毅 Example 3-2.将一个代码块的结果保存到文件 #!/bin/bash # ...

  10. SVN服务器端客户端配置, 及对比VSS的优势

    SVN 版本服务器搭配全过程详解(含服务端.客户端) SVN服务器端及客户端全套软件 SVN对比VSS的优势 两者区别:http://www.cnblogs.com/zxjyuan/archive/2 ...