Spring Boot 2 + MySQL
以 Spring Boot 2 项目使用 MySQL 数据库为例,快速接入 ezasse。
适用版本
本文档适用于 Spring Boot 2.x + Java 8+。如果你使用的是 Spring Boot 3.x,请参考 Spring Boot 3 + MySQL。
第一步:添加依赖
1. 添加 ezasse starter
当前版本信息
ezasse.version:1.0.0-re
- maven
- gradle
pom.xml
<dependency>
<groupId>cn.com.pism</groupId>
<artifactId>ezasse-spring-boot-starter</artifactId>
<version>1.0.0-re</version>
</dependency>
build.gradle
implementation group: 'cn.com.pism', name: 'ezasse-spring-boot-starter', version: '1.0.0-re'
2. 添加必要依赖(spring-jdbc + MySQL 驱动)
- Maven
- Gradle
pom.xml
<!-- spring-jdbc 支持 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- MySQL 驱动 (Spring Boot 2.x) -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
build.gradle
// spring-jdbc 支持
implementation 'org.springframework.boot:spring-boot-starter-jdbc'
// MySQL 驱动 (Spring Boot 2.x)
runtimeOnly 'mysql:mysql-connector-java'
第二步:配置数据源
在 application.yml 中添加数据库连接信息:
application.yml
spring:
datasource:
url: jdbc:mysql://localhost:3306/mydb?useSSL=false&characterEncoding=utf8
username: root
password: your_password
driver-class-name: com.mysql.jdbc.Driver
ezasse:
# 指定扫描的文件目录(默认扫描 sql 和 ezasse 目录)
folders:
- ezasse
第三步:编写 SQL 文件
在 src/main/resources/sql/ 目录下创建 SQL 文件,使用校验语法标记每段脚本:
src/main/resources/sql/init.sql
-- 当 t_user 表不存在时,执行建表语句
-- TABLE(t_user)
CREATE TABLE t_user
(
id BIGINT NOT NULL COMMENT '主键id' PRIMARY KEY,
account VARCHAR(64) NULL COMMENT '账号',
name VARCHAR(64) NULL COMMENT '用户名'
) COMMENT '用户表';
-- 当 t_user 表中没有 email 字段时,添加该字段
-- ADD(t_user.email)
ALTER TABLE t_user
ADD email VARCHAR(128) NULL COMMENT '邮箱';
-- 当下列 SQL 返回值为 0 时,插入初始管理员数据
-- EXEC(select count(1) from t_user where id = 1)
INSERT INTO t_user(id, account, name) VALUES (1, 'admin', '超级管理员');
第四步:启用 ezasse
在 Spring Boot 启动类上添加 @EnableEzasse 注解:
Application.java
package cn.com.pism.example;
import cn.com.pism.ezasse.starter.annotation.EnableEzasse;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@EnableEzasse
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
完成集成 🎉
启动项目后,ezasse 会自动扫描 sql 文件夹,逐行检查并执行满足条件的 SQL 脚本。