`
bravewu
  • 浏览: 49362 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

如何使用Bamboo来实现application.yml、mybatis mapper文件和docker-compse.yml的动态更新

 
阅读更多

最近在做一个保险项目。需求不算太复杂,主要是解决人员和保单信息的创建及更新。

  • 基本框架:springboot+mybatis+maven
  • 数据库:oracle
  • 应用服务器:websphere liberty
  • 代码管理工具:bitbucket
  • CI/CD工具:bamboo
  • docker镜像服务器: artifactory

这应该算是个微服务框架吧,但不够完整,没有设置配置服务器。

于是就需要利用bamboo做一些配置管理。

一开始所有的配置都是打进war包里,在开发阶段,这么做也没什么问题。进入测试阶段,因为数据库的用户名密码会不同,schema也可能会不同。客户提出要把appliaiton.yml及mapper文件中的数据库配置信息全部要进行动态设置。一开始我毫无思路,在客户的耐心引导和我自己的不懈努力下。最后终于找到一个解决方案。

第一步:把application.yml和application-dev/sit.yml合并成一个yml文件,在新的application.yml文件中将数据库的用户名替换为:${DB_USERNAME}。

第二步:把合并完的applicaiton.yml放在工程根目录下的一个发布目录里。避免被maven打进war里。

第三步:利用bamboo里构建containerize shell脚本,将application.yml拷贝到【liberty-server】/usr/servers/defaultServer

第四步:在bamboo部署阶段里为每一种环境配置不同的变量 如:db_username: testuser。

第五步:利用bamboo里部署的shell脚本动态生成docker-compose.xml,在server - environment里加入引入环境变量

DB_USERNAME: ${bamboo.db_username}

分享到:
评论

相关推荐

    校园交友平台毕设 SpringBoot2.7.x + MyBatis-plus .zip

    3. **src/main/resources** - 存放配置文件,如application.yml(SpringBoot配置)、mybatis-config.xml(MyBatis配置)以及数据库连接配置。 4. **Mapper** 文件夹 - 包含MyBatis的Mapper接口,用于数据库操作。 5....

    spring boot之整合mybatis

    在这个压缩包文件"spring-boot-mybatis"中,可能包含了完成上述整合过程的所有必要文件,如pom.xml、application.yml、Mapper接口、Mapper XML文件、Service类和Controller类等。通过对这些文件的学习和研究,开发者...

    spring boot mybatis整合

    1. **配置文件**:在`src/main/resources`下,创建`application.yml`或`application.properties`,用于配置Spring Boot和MyBatis。例如,配置数据源、MyBatis的配置路径等。 ```yaml spring: datasource: url: ...

    毕设项目:基于springboot + mybatis实现的校园过程化考核系统.zip

    无论是正在进行毕业设计的学生,还是希望提升技能的开发者,都可以通过这个项目了解Spring Boot与MyBatis的集成应用,以及如何在实际项目中设计和实现过程化考核功能。 【标签】中的“springboot”、“毕业设计”、...

    springboot-mybatis-demo.rar

    5. **Mapper接口和XML映射文件**:MyBatis中的Mapper接口用于定义数据库操作,对应的XML文件则包含了具体的SQL语句,二者结合实现了数据库操作。 6. **Service层和Controller层**:项目中应包含Service层,它是业务...

    springmybatis.zip

    《SpringBoot + MyBatis 入门教程:项目运行环境配置》 ...了解这些基础知识后,你就可以进一步学习这两个框架的高级特性,如 AOP、事务控制、MyBatis 动态 SQL 等,从而提升你的开发效率和项目质量。

    基于spring boot+mybatis的个人博客(前端+后台管理系统).zip

    - **Mapper接口**:每个映射器XML文件对应一个Java接口,实现动态SQL。 - **SqlSession**:执行SQL的主要接口,负责CRUD操作。 - **MyBatis-Spring整合**:将MyBatis与Spring整合,实现事务管理及依赖注入。 3. ...

    基于SpringBoot+Mybatis开发的分布式校园租赁系统.zip

    对于初学者来说,这是一个很好的实践平台,可以直接运行并学习其中的代码结构和实现方式。 【标签】"springboot java" SpringBoot是基于Java语言的,因此,这个租赁系统项目使用Java作为主要的编程语言。...

    消防管理后台-springboot-mybatis-thymeleaf-毕业设计600.zip

    2. `src/main/resources`: 存放配置文件,如application.yml或application.properties,数据库连接配置,MyBatis的Mapper XML文件等。 3. `src/main/webapp/WEB-INF`: 如果使用Thymeleaf,这里可能会包含HTML模板...

    springboot+mybatis在线问卷系统.zip

    - **配置文件**:如`application.yml`或`application.properties`,用于配置SpringBoot的各项功能,如服务器端口、数据库连接等。 - **Mybatis配置**:包括`mybatis-config.xml`,定义Mybatis全局配置,以及映射...

    基于spring boot的ssm项目.zip

    - `src/main/resources`: 存放配置文件,如application.properties或application.yml,MyBatis的mapper文件等。 - `src/main/webapp/WEB-INF`: 存放web相关的配置,如web.xml(虽然在Spring Boot中不常用)。 - `pom...

    spring boot+ mybatis 基本框架demo

    在IT行业中,Spring Boot和Mybatis是两个非常重要的框架,它们在构建现代Java应用程序中扮演着核心角色。Spring Boot简化了Spring应用的初始搭建以及开发过程,而Mybatis则是一个优秀的持久层框架,使得数据库操作变...

    基于SpringBoot+Mybatis线上网络文件网盘管理系统毕业源码案例设计.zip

    总的来说,这个项目涵盖了SpringBoot的快速开发特性,Mybatis的数据库操作,用户认证与授权,文件处理,小程序开发,以及可能的Docker部署和缓存策略等多方面的知识点。对于学习者来说,通过研究这个源码案例,不仅...

    一个 SpringBoot + Mybatis + Thymeleaf 等技术实现的 BBS 论坛系统。功能完善,页.zip

    - `src/main/resources`:存放配置文件,如application.properties或application.yml,数据库连接配置,Mybatis的Mapper XML文件等。 - `src/main/webapp/WEB-INF/views`:Thymeleaf的视图模板文件存放位置,每个...

    基于springboot+mybatis+mysql的电脑商城源码.zip

    2. **src/main/resources**:资源文件夹,包括配置文件(如`application.properties`或`application.yml`)、MyBatis的Mapper XML文件、静态资源(如HTML、CSS、JS)等。 3. **pom.xml**:项目依赖管理文件,列出了...

    sptxxyy-心理健康预约-springboot+mybatis

    项目中可能会有`application.properties`或`application.yml`文件,用于配置SpringBoot的各种属性。 2. **MyBatis**:MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。项目中的Mapper接口...

    基于ssm+vue本科生导师指导平台.zip

    - `mybatis-config.xml`和Mapper文件:MyBatis的配置和SQL映射文件。 4. **配置文件**: - `pom.xml`或`build.gradle`:构建工具的配置文件,定义项目依赖。 - `spring-boot-starter-web`:SpringBoot的Web模块...

Global site tag (gtag.js) - Google Analytics