千家信息网

SpringBoot如何整合Liquibase

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要介绍了SpringBoot如何整合Liquibase,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。整合有两种情况在启动项目
千家信息网最后更新 2026年11月01日SpringBoot如何整合Liquibase

这篇文章主要介绍了SpringBoot如何整合Liquibase,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

整合有两种情况

  1. 在启动项目时自动执行脚本,若新添加了Liquibase脚本需要重启项目才能执行脚本

  2. 在不启动项目时也能通过插件或指令手动让它执行脚本

整合要么只整合1,要么1、2一起整合

只整合2不整合1的话,项目启动时会生成liquibase相关的bean时报错

整合1

引入Maven依赖

这里导入了Liquibase的包和连接MySQL数据库的包

    org.liquibase    liquibase-core    3.6.2    mysql    mysql-connector-java    runtime

在SpringBoot配置文件中配置

配置中liquibase相关的只需要配置根changelog的位置,数据库相关配置liquibase会自己去拿datasource下面的,注意url需要加上时区serverTimezone

spring:  datasource:    username: root    password: root    url: jdbc:mysql://localhost:3306/test_database?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai  liquibase:    change-log: classpath:/db/liquibaseChangeLogFile.xml

配置liquibaseChangeLogFile.xml

同样需要注意xml文件的路径,按照上述配置的话该文件在src/main/resources/db/liquibaseChangeLogFile.xml

                            

配置changeLog.xml

  • 按照上述的配置的话,changeLog文件应该放在src/main/resources/db/changelog/

  • 下面简单写一个changelog来测试

                                                                                                                        

整合情况:

按照上面的流程配置完,在启动项目时,它就会执行未执行过的Lisquibase脚本了~

整合2

有时候想不启动或不重启项目时执行Liquibase脚本,此时就应该整合2

引入Maven插件

引入的插件版本和上面的依赖包的版本号保持一致,不过我也没有考究过不一致会怎样,有兴趣的小伙伴可以试试 ,不过不一致看得不会难受吗在这里的configuration标签中,配置好要读取的liquibase相关信息的配置文件,并且注意好路径

                        org.liquibase            liquibase-maven-plugin            3.6.2                            src/main/resources/liquibase.properties                                false                        

配置Liquibase.properties

注意配置文件的路径应跟在配置Maven插件时声明的一致,即src/main/resources/liquibase.properties配置好如下的五个属性,注意url需要加上时区serverTimezone注意changeLogFile项的路径,它是一个相对路径,该配置会在下面展示

#配置都整合在yml配置文件里了,若想不启动时执行liquibase脚本该配置不能省!!!!driver-class-name=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/test_database?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghaiusername=rootpassword=rootchangeLogFile=db/liquibaseChangeLogFile.xml

配置liquibaseChangeLogFile.xml

在整合1的时候就已经配置好了~

配置changeLog.xml

按照上述的配置的话,changeLog文件应该放在src/main/resources/db/changelog/下面再写一个liquibase脚本

                                                            

测试整合情况

  • 先mvn clean和install一下!!! 否则不能找到我们写的xml文件

  • 在maven插件中找到liquibase:update,双击即可~

补充:下面给大家分享一段示例代码讲解下spring boot 整合 liquibase

1.添加依赖

   org.liquibase   liquibase-core   3.8.3   org.liquibase   liquibase-maven-plugin   3.8.3   org.liquibase   liquibase-maven-plugin   3.8.3         src/main/resources/db/liquibase.properties   

2.创建liquibase.properties 内容如下

url=jdbc:postgresql://127.0.0.1:5432/ems_factorymodeldbusername=namepassword=passworddriver=org.postgresql.DriveroutputChangeLogFile=src/main/resources/liquibase-outputChangeLog.xml

3.创建 db.changelog-master.xml

                        

4.增加配置

# liquibasespring.liquibase.enabled=truespring.liquibase.change-log=classpath:db/db.changelog-master.xml

感谢你能够认真阅读完这篇文章,希望小编分享的"SpringBoot如何整合Liquibase"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

配置 整合 文件 脚本 项目 插件 路径 一致 篇文章 情况 面的 兴趣 数据 数据库 时区 版本 要么 测试 难受 代码 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 深圳市人人互联网科技有限公司 百单网互联网科技有限公司怎么样 云信互联网科技有限公司 广州百单互联网科技有限公司 互联网科技巨头监管 互联网科技官网 互联网扶贫科技 中资互联网科技 互联网与新科技 银优互联网科技有限公司 互联网金融和金融科技 互联网科技公司名称 互联网金融监管科技 海南购全球互联网科技 湖南洣水互联网科技有限公司扣款 互联网和高科技公司 黑科技闪耀互联网之光 山东星卡互联网科技有限公司官网 云鲸互联网络科技有限公司 东风日产互联网科技公司叫什么 科技互联网公司logo 天下捷融互联网科技 科技互联网创业计划书 互联网科技创新企业排名 华服互联网科技官网 速维有品互联网信息科技(苏州)有限公司 民营互联网公司国防科技 南博望互联网科技有限公司 领航科技大厦互联网公司 中国主要互联网科技公司
0