Liquibase是一个开源数据库变更管理工具,帮助技术团队跟踪、版本管理和部署数据库结构变更。以下介绍如何在spring框架集成liquibase。
首先,在pom.xml文件中加入对于liquibase的依赖:
<dependency>
<groupId>org.liquibase</groupId>
<artifactId>liquibase-core</artifactId>
<version>3.8.4</version>
</dependency>
接下来定义bean:
<bean id="springLiquibase"
class="liquibase.integration.spring.SpringLiquibase">
<property name="dataSource" ref="dataSource"/>
<property name="shouldRun" value="true"/>
<property name="changeLog" value="classpath:db/changelog/db.changelog-master.xml"/>
</bean>
然后在resources文件夹下的db/changelog/文件夹创建db.changelog-master.xml,文件内容为:
<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
<include file="db/changelog/REQ-0.xml"/>
</databaseChangeLog>
最后定义变更内容,保存在resources文件夹下的db/changelog/文件夹,文件名为REQ-0.xml,文件内容为:
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd
http://www.liquibase.org/xml/ns/dbchangelog
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.4.xsd">
<changeSet author="yourname" id="REQ-0">
<createTable tableName="test_table">
<column autoIncrement="true" name="id" type="INT">
<constraints nullable="false" primaryKey="true"/>
</column>
<column name="table_name" type="varchar(50)">
</column>
</createTable>
</changeSet>
</databaseChangeLog>
完成以上步骤后,启动应用时会自动执行上面定义的第一个变更。如果有新的变更需求,参照REQ-0的方式建立、引入变更文件。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。