技术派数据库表自动初始化(👍强烈推荐)
选中新版正文中的对应文字,然后点“定位到这里”。
技术派项目,本地拉下代码之后,不需要自己在db中手动创建或者导入相关的schema、data,项目直接启动就会自动创建对应的库表,并初始化数据,那么有小伙伴有想过,它到底是怎么实现的么?
Liquibase数据库表版本管理
liquibase也是我们现在技术派采用的方案,我们将所有的表结构变更、初始化相关数据的变更都记录在案,对于开源项目而言,不管其他小伙伴当前使用的是什么版本,当他拉最新代码之后,可以无需关注库表的变更,启动之后自动同步更新,非常方便
接下来看一下技术派中的使用姿势
依赖配置
在 paicoding-web 模块中,pom.xml 文件中添加
org.liquibase
liquibase-core
然后就是核心的配置,首先是 application.yml 配置文件中,有两个关键参数
spring:
liquibase:
change-log: classpath:liquibase/master.xml
enabled: true # 当实际使用的数据库不支持liquibase,如 mariadb 时,将这个参数设置为false

说明:
- 对于不支持liquibase的数据库,如mariadb,请将上面的 spring.liquibase.enabled 设置为 false
- change-log: 对应的是核心的数据库版本变更配置
master.xml 文件中的内容如下
注意上面这个 include, 这里就是告诉liquibase,所有的变更记录,都放在了 liquibase/changelog/000_initial_schema.xml 这个文件中
技术派中现在只有一个include标签,但是实际上是可以有很多个的;一个好的建议是,项目...
未能定位到原文的划线
已加入星球,可直接知识星球授权登录
二哥编程星球目前包含:
企业级Agent工作流编排项目PaiFlow
Vibe Coding版本的PaiAgent
派聪明RAG AI知识库Java版本+Go版本
微服务 PmHub、技术派、MYDB
求职派JobClaw(OpenClaw/Hermes架构
PaiCLI(类似Claude Code的Agent
派简历(代码已完成)
等实战项目。
企业级Agent工作流编排项目PaiFlow
Vibe Coding版本的PaiAgent
派聪明RAG AI知识库Java版本+Go版本
微服务 PmHub、技术派、MYDB
求职派JobClaw(OpenClaw/Hermes架构
PaiCLI(类似Claude Code的Agent
派简历(代码已完成)
等实战项目。
1. 微信扫右侧的优惠券加入知识星球
2. 解锁星球的实战项目教程和源码: 项目源码+教程获取
真诚点赞 诚不我欺
回复