• 介绍

    项目创建成功之后,需要初始化本地数据库。在开发之前,请确保本地项目已经创建成功,详见 新建项目

    创建用户

    确保数据库启动成功,并创建项目访问的用户。

    CREATE USER 'hzero'@'%' IDENTIFIED BY "hzero";
    

    创建数据库

    用户创建成功之后,创建项目对应的数据库,并将新创建的数据库权限赋予用户。

    CREATE DATABASE todo_service DEFAULT CHARACTER SET utf8;
    GRANT ALL PRIVILEGES ON todo_service.* TO hzero@'%';
    FLUSH PRIVILEGES;
    

    设计表结构

    导出Groovy脚本

    HZERO 采用Liquibase + groovy 的方式对数据库管理,便于后续同步各个环境数据库结构以及升级。

    更多有关Liguibase的资料见 Liquibase 官网

    同步表结构

    将表结构同步到其它环境时,可使用数据安装工具来安装数据库,将 groovy 脚本导出后,放到本地 hzero-resource 项目的 groovy 目录下,然后启动工具安装数据库即可。

    验证表结构

    登录数据库,查询现有的表结构。

    mysql> show tables;
    +---------------------------------------+
    | Tables_in_todo_service |
    +---------------------------------------+
    | DATABASECHANGELOG                     |
    | DATABASECHANGELOGLOCK                 |
    | TODO_TASK                             |
    | TODO_USER                             |
    +---------------------------------------+
    5 rows in set (0.00 sec)
    

    项目数据库配置

    pom.xml 文件中添加数据库操作相关依赖。

    <dependency>
        <groupId>org.hzero.starter</groupId>
        <artifactId>hzero-starter-mybatis-mapper</artifactId>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>
    

    在项目的 application.yml 文件中添加数据库连接信息:

    spring:
      datasource:
        url: ${SPRING_DATASOURCE_URL:jdbc:mysql://db.hzero.org:3306/todo_service?useUnicode=true&characterEncoding=utf-8&useSSL=false}
        username: ${SPRING_DATASOURCE_USERNAME:hzero}
        password: ${SPRING_DATASOURCE_PASSWORD:hzero}
    
    # MyBatis Mapper 扫描
    mybatis:
      mapperLocations: classpath*:/mapper/*.xml
      configuration:
        mapUnderscoreToCamelCase: true
    

    项目根目录下执行命令。项目正常启动,则数据库连接配置正常。

    $ mvn clean spring-boot:run