国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

SpringBoot整合flyway實現步驟解析

瀏覽:3日期:2023-05-01 11:09:52

引入依賴

pom.xml

<?xml version='1.0' encoding='UTF-8'?><project xmlns='http://maven.apache.org/POM/4.0.0' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd'> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.6.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.yang</groupId> <artifactId>fly-way-demo</artifactId> <version>0.0.1-SNAPSHOT</version> <name>fly-way-demo</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.flywaydb</groupId> <artifactId>flyway-core</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions><exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId></exclusion> </exclusions> </dependency> </dependencies> <build> <plugins> <plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin><groupId>org.flywaydb</groupId><artifactId>flyway-maven-plugin</artifactId> </plugin> </plugins> </build></project>

第一版sql腳本

src/main/resources/db/migration/V1__sys_dept.sql

SET FOREIGN_KEY_CHECKS=0;-- ------------------------------ Table structure for sys_dept-- ----------------------------DROP TABLE IF EXISTS `sys_dept`;CREATE TABLE `sys_dept` ( `dept_id` int(20) NOT NULL AUTO_INCREMENT, `name` varchar(50) DEFAULT NULL COMMENT ’部門名稱’, `sort` int(11) DEFAULT ’0’ COMMENT ’排序’, `create_time` datetime DEFAULT NULL COMMENT ’創(chuàng)建時間’, `update_time` datetime DEFAULT NULL COMMENT ’修改時間’, `del_flag` char(1) DEFAULT ’0’ COMMENT ’是否刪除 -1:已刪除 0:正常’, `parent_id` int(11) DEFAULT NULL, PRIMARY KEY (`dept_id`)) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT=’部門管理’;

第二版sql腳本

src/main/resources/db/migration/V1.1__sys_dept.sql

INSERT INTO `sys_dept` VALUES (1, ’總經辦’, 0, ’2020-03-13 13:13:16’, ’2020-03-13 13:14:31’, ’0’, 0);INSERT INTO `sys_dept` VALUES (2, ’行政中心’, 1, ’2020-03-13 13:13:30’, NULL, ’0’, 1);INSERT INTO `sys_dept` VALUES (3, ’技術中心’, 2, ’2020-03-13 13:14:55’, NULL, ’0’, 1);INSERT INTO `sys_dept` VALUES (4, ’運營中心’, 3, ’2020-03-13 13:15:15’, NULL, ’0’, 1);INSERT INTO `sys_dept` VALUES (5, ’研發(fā)中心’, 5, ’2020-03-13 13:15:34’, NULL, ’0’, 3);INSERT INTO `sys_dept` VALUES (6, ’產品中心’, 6, ’2020-03-13 13:15:49’, NULL, ’0’, 3);INSERT INTO `sys_dept` VALUES (7, ’測試中心’, 7, ’2020-03-13 13:16:02’, NULL, ’0’, 3);

項目配置文件,主要是dataSource,flyway的采用約定值

src/main/resources/application.properties

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/fly_way?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=truespring.datasource.username=rootspring.datasource.password=rootspring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

一些flyway配置項

flyway.baseline-description對執(zhí)行遷移時基準版本的描述.flyway.baseline-on-migrate當遷移時發(fā)現目標schema非空,而且?guī)в袥]有元數據的表時,是否自動執(zhí)行基準遷移,默認false.flyway.baseline-version開始執(zhí)行基準遷移時對現有的schema的版本打標簽,默認值為1.flyway.check-location檢查遷移腳本的位置是否存在,默認false.flyway.clean-on-validation-error當發(fā)現校驗錯誤時是否自動調用clean,默認false.flyway.enabled是否開啟flywary,默認true.flyway.encoding設置遷移時的編碼,默認UTF-8.flyway.ignore-failed-future-migration當讀取元數據表時是否忽略錯誤的遷移,默認false.flyway.init-sqls當初始化好連接時要執(zhí)行的SQL.flyway.locations遷移腳本的位置,默認db/migration.flyway.out-of-order是否允許無序的遷移,默認false.flyway.password目標數據庫的密碼.flyway.placeholder-prefix設置每個placeholder的前綴,默認${.flyway.placeholder-replacementplaceholders是否要被替換,默認true.flyway.placeholder-suffix設置每個placeholder的后綴,默認}.flyway.placeholders.[placeholder name]設置placeholder的valueflyway.schemas設定需要flywary遷移的schema,大小寫敏感,默認為連接默認的schema.flyway.sql-migration-prefix遷移文件的前綴,默認為V.flyway.sql-migration-separator遷移腳本的文件名分隔符,默認__flyway.sql-migration-suffix遷移腳本的后綴,默認為.sqlflyway.tableflyway使用的元數據表名,默認為schema_versionflyway.target遷移時使用的目標版本,默認為latest versionflyway.url遷移時使用的JDBC URL,如果沒有指定的話,將使用配置的主數據源flyway.user遷移數據庫的用戶名flyway.validate-on-migrate遷移時是否校驗,默認為true.

啟動項目可以看到業(yè)務表的變化及flyway_schema_history版本記錄表的變化。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
主站蜘蛛池模板: 成在线人视频免费视频 | 久草精品视频 | 韩国一级毛片 | 午夜精品视频在线观看美女 | 日本美女一区二区三区 | 国产永久免费高清动作片www | 亚洲三级在线视频 | 亚洲综合视频 | 亚洲精品日韩专区在线观看 | 欧美三级黄 | 日韩国产一区二区 | 国产成人精品实拍在线 | 国产三级精品美女三级 | 一级做a爱过程免费视频麻豆 | 日本黄网在线观看 | 免费一级毛片无毒不卡 | 欧美一区=区三区 | 色综合夜夜嗨亚洲一二区 | 美女大片高清特黄a大片 | 国产成人精品综合久久久软件 | 成人片网址 | 久久久久网站 | 国产成人理在线观看视频 | free性丰满白嫩白嫩的hd | 黄色一级毛片网站 | 怡红院免费全部视频在线视频 | 狼人总合狼人综合 | 久久亚洲国产最新网站 | 日韩视频在线观看中字 | 九草在线播放 | 亚洲欧美视频在线播放 | 寡妇一级a毛片免费播放 | 国内精品久久久久影院网站 | 欧美精选欧美极品 | 色老头一级毛片 | 日韩精品一区二三区中文 | 精品一区二区三区视频在线观看 | 最近日本免费观看视频 | 亚洲自拍偷拍网 | 97国产大学生情侣11在线视频 | 久久经典免费视频 |