Java Apollo环境搭建以及集成SpringBoot案例详解
环境搭建
下载Quick Start安装包
从Github下载:checkout或下载apollo-build-scripts项目
手动打包Quick Start安装包
- 修改apollo-configservice, apollo-adminservice和apollo-portal的pom.xml,注释掉spring-boot-maven-plugin和maven-assembly-plugin
- 在根目录下执行mvn clean package -pl apollo-assembly -am -DskipTests=true
- 复制apollo-assembly/target下的jar包,rename为apollo-all-in-one.jar
创建数据库
Apollo服务端共需要两个数据库:ApolloPortalDB和ApolloConfigDB,数据库、表的相关Sql在安装包里,只需要导入数据库即可。直接导入就行。
配置数据库连接信息
-Apollo服务端需要知道如何连接到你前面创建的数据库,所以需要编辑demo.sh,修改ApolloPortalDB和ApolloConfigDB相关的数据库连接串信息。
注意:填入的用户需要具备对ApolloPortalDB和ApolloConfigDB数据的读写权限。
#apollo config db info apollo_config_db_url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8 apollo_config_db_username=用户名 apollo_config_db_password=密码(如果没有密码,留空即可) # apollo portal db info apollo_portal_db_url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8 apollo_portal_db_username=用户名 apollo_portal_db_password=密码(如果没有密码,留空即可)
注意:不要修改demo.sh的其它部分
修改默认的apollo端口
# meta server url config_server_url=http://localhost:6001 admin_server_url=http://localhost:6002 eureka_service_url=$config_server_url/eureka/ portal_url=http://localhost:6003
启动apollo配置中心
- 在 git bash窗口中运行命令行
./demo.sh start
- 启动成功界面信息如下:
- 如果启动报错,请在相应的日志文件中查看出错原因。
Apollo启动成功
- 默认8080界面
- 8090 apoolo配置界面
登录配置中心、新建服务的相关配置
- 默认账号密码:
apollo admin
Apollo 集成 SpringBoot 读取配置文件
概述
Apollo支持API方式和Spring整合方式,该怎么选择用哪一种方式?
- API方式灵活,功能完备,配置值实时更新(热发布),支持所有Java环境。
- Spring方式接入简单。 Spring方式也可以结合API方式使用,如注入Apollo的Config对象,就可以照常通过API方式获取配置了:
@ApolloConfig private Config config; //inject config for namespace application
引入依赖
<dependency> <groupId>com.ctrip.framework.apollo</groupId> <artifactId>apollo-client</artifactId> <version>1.3.0</version> </dependency>
在配置中心新建配置文件
配置私有的 app-demo-one-dev 和共有的 app-common-dev
- app-demo-one-dev私有配置
- app-common-dev 共有配置
SpringBoot 配置拉去配置文件
- application.yml
apollo: bootstrap: eagerLoad: enabled: true enabled: true namespaces: application,TEST1.ConfigOne meta: http://localhost:8080 app: id: app-demo-one-dev
- 就是把所有的配置文件换了个地方存着,配置文件可以通过模块化、公有化的方式配置,方便所有服务的配置文件管理。
- 还是挺简单的,方便开发。
- 配置相关代码见:https://gitee.com/Marlon_Brando/back/commit/993b5e624b9b2beca070bd854b5f09bdb66a9859
栏 目:JAVA代码
下一篇:Java集合框架超详细小结
本文标题:Java Apollo环境搭建以及集成SpringBoot案例详解
本文地址:http://www.codeinn.net/misctech/227786.html