SpringBoot集成携程Apollo分布式配置中心(二)

一、创建一个可以读取配置文件自定义配置内容的springboot项目:

1.创建一个springboot项目

2.引入application.yml配置文件

server:
  port: 8001
eureka:
  client:
    service-url:
      #这个是Apollo的注册中心地址
      defaultZone: http://192.168.40.142:8080/eureka

introduce: 这是介绍内容

3.在resources创建apollo-env.properties文件

local.meta=http://192.168.40.142:8080
dev.meta=http://192.168.40.142:8080
fat.meta=${fat_meta}
uat.meta=${uat_meta}
lpt.meta=${lpt_meta}
pro.meta=${pro_meta}

4.在resources资源目录下创建META-INF文件夹,在该文件夹下创建app.properties文件

app.id=apollo_0719

     该文件主要是为了创建一个唯一的appid,在Apollo配置中使用。

资源目录如图所示:

5.引入maven依赖

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.1.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
        <spring-cloud.version>Finchley.RC1</spring-cloud.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!-- apollo 携程apollo配置中心框架 -->
        <dependency>
            <groupId>com.ctrip.framework.apollo</groupId>
            <artifactId>apollo-client</artifactId>
            <version>1.0.0</version>
        </dependency>
        <dependency>
            <groupId>com.ctrip.framework.apollo</groupId>
            <artifactId>apollo-core</artifactId>
            <version>1.0.0</version>
        </dependency>


        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.3</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>


    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>


    <repositories>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>

6.创建controller

@RestController
public class IndexController {
    /**
     * 使用注解读取application.yml文件中的配置 introduce的内容
     */
    @Value("${introduce}")
    private String IntroduceApollo;

    @GetMapping("/introduce")
    public String getIntroduce() {
        return IntroduceApollo;
    }
}

7.启动服务,访问接口,可以看到在配置文件中的内容已经访问到了。

二、配置Apollo客户端

1.在服务器启动Apollo服务时,根据提示访问配置中心:

2.登录Apollo,Apollo的默认账号为apollo  密码为admin  登录成功为如下界面,点击创建项目

3.输入创建项目的相关内容,注意应用id为springboot项目中app.properties文件中的配置内容

4.创建成功后如下所示:

5.点击新建一个配置

6.新建配置中的key输入在application.yml文件中自定的introduce,然后重新定义一个value,提交

 

7.发布刚才创建的配置内容,在不发布时,是无法推送到项目中的。

8.发布

9.访问

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章