springboot 配置自动执行sql文件

本文介绍如何使用YAML文件配置Spring框架连接MySQL数据库的方法,包括指定平台、模式与数据初始化脚本的具体设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在application.yml中配置数据库

spring:
   datasource:
     platform: mysql
     schema: classpath:schema.sql
     data: classpath:data.sql

 

### 如何在 Spring Boot 中运行 SQL 文件 #### 方法一:使用 `spring-boot-starter-data-jpa` 和 `application.yml` 当启动应用程序时,Spring Boot 可以自动执行位于特定位置的 SQL 文件。对于 JPA 或者 Hibernate 用户来说,在配置文件中指定如下属性即可让应用加载并执行 SQL 文件: ```yaml spring: datasource: url: jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTC username: root password: secret driver-class-name: com.mysql.cj.jdbc.Driver jpa: hibernate: ddl-auto: none show-sql: true sql: init: mode: always platform: mysql ``` 放置要执行SQL 文件到 resources 目录下,并命名为 `schema.sql` 或者 `data.sql`[^1]。 #### 方法二:利用 Flyway 数据库迁移工具 Flyway 是一款优秀的开源数据库版本管理工具,它能够很好地集成到 Spring Boot 应用程序当中去。只需要引入对应的 Maven/Gradle 插件以及编写好 SQL 脚本存放在资源目录下的 db/migration 文件夹内,就可以完成自动化部署工作流中的数据表结构变更和初始化数据插入等任务了。 添加依赖项至项目的构建脚本(Maven 示例): ```xml <dependency> <groupId>org.flywaydb</groupId> <artifactId>flyway-core</artifactId> </dependency> ``` 创建 V 版本号__描述名__.sql 的命名模式来保存各个阶段所需的 DDL/DML 命令语句于 src/main/resources/db/migration 下面[^2]。 #### 方法三:借助 Liquibase 进行数据库更改追踪 Liquibase 同样是一个用于跟踪、管理和应用数据库架构变化的强大框架。与 Flyway 类似的是,也支持多种编程语言环境及其主流关系型数据库管理系统之间的无缝衔接;不同之处在于其采用 XML、JSON 或 YAML 格式的 changelog 文档形式记录所有的修改动作。 向 POM 文件追加 Liquibase Core 组件声明 (Maven): ```xml <dependency> <groupId>org.liquibase</groupId> <artifactId>liquibase-core</artifactId> </dependency> ``` 按照官方文档指导设置好必要的参数选项之后,把更新逻辑写入 xml/json/yml 文件之中,通常会放到 classpath:/db/changelog 目录面。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DQchat

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值