大家好,最近公司新项目采用SpingCloud全家桶进行开发,原先对SpringCloud仅仅只是停留在了解的初级层面,此次借助新项目的契机可以深入实践下SpringCloud,甚是Happy。大学毕业刚入职的时候就有想写技术文章的想法,蹉跎蹉跎都那么些年过去了,期间所遇到的问题都图方便随手保存在了有道云笔记这个狭小的空间中,记了这么多也要见见光了,后续有机会都迁移出来,大家互相学习,提升技术,修炼内功。话不多说,那我们现在就开始SpringCloud之旅吧!
项目版本spring-boot-version:2.2.5.RELEASE
spring-cloud.version:Hoxton.SR3
ConfigServer服务端先构建SpringCloud Config服务端
打开https://start.spring.io/
勾选Config Server,下载导入IDE即可
部分pom信息 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId> </dependency>
application.properties
# 应用服务名称 spring.application.name=config-server # 应用服务端口号 server.port=9001 # Git远程库检索相对地址 spring.cloud.config.server.git.search-paths=http://www.likecs.com/springCloudAProject/** # Git远程库http访问项目地址 spring.cloud.config.server.git.uri=https://github.com/niuniu9631/SpringCloudConfig # Git远程库http访问验证用户名 spring.cloud.config.server.git.username=自己Git账号 # Git远程库http访问验证密码 spring.cloud.config.server.git.password=自己Git账号密码ConfigServerApplication.java
@EnableConfigServer @SpringBootApplication public class ConfigServerApplication { public static void main(String[] args) { SpringApplication.run(ConfigServerApplication.class, args); } }至此服务端相关代码配置都已OK,让我们一起Run起来吧。
通过浏览器访问下服务,:9001/
因未对外开放任何访问接口,所以出现404就是对的啦,只要项目没有启动出错就说明配置这块没啥问题了,不放心当然可以构建个客户端访问拉取下数据。这边我提供下我这边发现的一个小技巧,启动没报错后,可去系统的临时文件查看是否有新建的以config-repo-xxxxx开头的目录,有的话说明服务端Git配置这块没有问题。
Windows默认临时目录:C:\Users\wyb\AppData\Local\Temp
Linux默认临时目录:/tmp
该配置项可根据该配置项进行调整
我这边未配置指定目录,临时目录文件如下
还是老样子,打开https://start.spring.io/,
勾选Config Client,Spring Web,下载导入IDE即可。
部分pom信息 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-config</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
application.properties
# 客户端服务应用名称 spring.application.name=config-client # 客户端端口号 server.port=9002bootstrap.properties
# 应用服务名称 spring.cloud.config.name=config-client # 对应git上分支名称 spring.cloud.config.label=master # 对应配置文件上profiles参数项 spring.cloud.config.profile=dev # 配置服务端请求地址 spring.cloud.config.uri=http://localhost:9001/ConfigClientApplication.java
@SpringBootApplication public class ConfigClientApplication { public static void main(String[] args) { SpringApplication.run(ConfigClientApplication.class, args); } }ConfigClientWebController.java
用于访问配置项进行验证
至此客户端相关代码配置都已OK,让我们一起Run起来吧。
通过浏览器访问下服务,:9002/getEnv