标签:spring cloud config svn gradle
很多企业还没使用Git仓库来管理代码,而是使用SVN。在Spring cloud 实现配置管理的时候,就需要另外配置,跟官方Sample 有点区别。
接下来操作步骤有:
1.创建SVN 配置repo
2.开发服务端
3.开发客户端
4.刷新客户端
话不多说,上干货。
1. 创建SVN 配置repo
目录结果如下: 文件名称,暂时不纠结,往后看(MARK)。
cloud-config-test.properties 内容:
payment.username=test_update_Angus_zhu_1 current=test
cloud-config-stg.properties 内容:
payment.username=Angus_stg
cloud-config-prd.properties 内容:
payment.username=Angus_prd
2. 开发服务端:
服务端项目结果如下:
a. 创建gradle 工程
build.gradle 如下:
import java.text.SimpleDateFormat
group ‘com.sinosafe‘
version ‘1.0-SNAPSHOT‘
buildscript {
ext {
springBootVersion = ‘1.5.2.RELEASE‘
}
repositories {
jcenter {url ‘http://jcenter.bintray.com/‘}
mavenLocal()
mavenCentral()
}
dependencies {
classpath "org.springframework.boot:spring-boot-gradle-plugin:$springBootVersion"
classpath ‘org.springframework:springloaded:1.2.4.RELEASE‘
classpath ‘org.hidetake:gradle-ssh-plugin:2.0.0‘
classpath "io.spring.gradle:dependency-management-plugin:0.5.6.RELEASE"
}
}
apply plugin: ‘java‘
apply plugin: ‘maven‘
apply plugin: ‘idea‘
apply plugin: ‘org.springframework.boot‘
apply plugin: ‘war‘
apply plugin: ‘application‘
apply plugin: ‘org.hidetake.ssh‘
apply plugin: "io.spring.dependency-management"
def env = System.getProperty("env") ?: "prd"
sourceSets {
main {
resources {
srcDirs = ["src/main/resources","src/main/profile/$env"]
}
}
}
def date = new SimpleDateFormat("yyyy-MM-dd").format(new Date())
jar {
baseName = "config-$env"
version = ‘1.0-RELEASE‘
}
war {
baseName = "config-$env"
version = ‘1.0-RELEASE‘
}
repositories {
// maven{ url ‘http://maven.aliyun.com/nexus/content/groups/public‘}
mavenLocal()
mavenCentral()
}
distZip {
archiveName "$baseName-$version-$date-$env-RELEASE.zip"
}
dependencyManagement {
imports {
mavenBom "org.springframework.cloud:spring-cloud-dependencies:Camden.SR5"
}
}
dependencies {
compile "org.springframework.boot:spring-boot-starter-web:$springBootVersion"
compile ‘org.springframework.cloud:spring-cloud-starter-config‘
compile ‘org.springframework.cloud:spring-cloud-config-server‘
compile ‘org.tmatesoft.svnkit:svnkit‘
}
springBoot {
mainClass = "com.sinosafe.config.BaseApplication"
}
b. application.properties 配置文件
server.port = 8001
server.sessionTimeout=15
server.tomcat.max-threads = 800
server.tomcat.uri-encoding = UTF-8
#应用名称
spring.application.name=configServer
#spring.cloud.config.server.git.uri=${HOME}/Desktop/config
#指定配置中心使用svn管理
spring.profiles.active=subversion
#http-mutil 微服务svn配置中心
spring.cloud.config.server.svn.uri=http://svn.sinosafe.com.cn:1580/svn/config-center
#svn repo 可访问的用户名密码
spring.cloud.config.server.svn.username=jenkins
spring.cloud.config.server.svn.password=jenkins
spring.cloud.config.server.default-label=trunk
spring.cloud.config.enabled=true
#无需安全认证
management.security.enabled=false
#配置中心应用名
spring.cloud.config.name=cloud-config
#指定配置生效环境
spring.cloud.config.profile=test说明:回到 步骤1.MARK 处,发现文件命名规则其实是:
{{spring.cloud.config.name}}-{{spring.cloud.config.profile}};即客户端生效读到的
cloud-config-test.properties;
c. 启动工程
-Denv 是指定取profile下面test目录下面的文件作为生效配置
d.启动后,查看不同环境下配置的参数
stg环境:
test 环境
刷新配置,查看版本

本文出自 “成熟中的猪” 博客,请务必保留此出处http://idoudou.blog.51cto.com/1376341/1936981
标签:spring cloud config svn gradle
原文地址:http://idoudou.blog.51cto.com/1376341/1936981