Skip to content

SPringBoot

提示

  • DATASOURCE模式的某些操作已经无法避免需要同时操作 acuity_defaults 和 acuity_base_{TenantId} 库,所以为了保证分布式事务一致性,系统集成了Seata来保证分布式事务准确性。但Seata的配置需要导入Nacos,所以acuity-boot-pro-datasource-column也需要使用Nacos和Seata。
  • boot版的COLUMN模式和NONE模式无需使用Nacos和Seata。

修改配置并编译项目

创建数据库并导入初始脚本

sql
# mysql
CREATE DATABASE IF NOT EXISTS `acuity_defaults` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE DATABASE IF NOT EXISTS `acuity_base_1` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

# oracle
create user acuity_defaults identified by acuity_defaults;
create user acuity_base_1 identified by acuity_base_1;
grant create session,create table,create sequence,create view,resource to acuity_defaults;
grant create session,create table,create sequence,create view,resource to acuity_base_1;

# SQL Server
CREATE DATABASE acuity_defaults COLLATE Chinese_PRC_CI_AS;
CREATE DATABASE acuity_base_1 COLLATE Chinese_PRC_CI_AS;
# mysql
CREATE DATABASE IF NOT EXISTS `acuity_defaults` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE DATABASE IF NOT EXISTS `acuity_base_1` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

# oracle
create user acuity_defaults identified by acuity_defaults;
create user acuity_base_1 identified by acuity_base_1;
grant create session,create table,create sequence,create view,resource to acuity_defaults;
grant create session,create table,create sequence,create view,resource to acuity_base_1;

# SQL Server
CREATE DATABASE acuity_defaults COLLATE Chinese_PRC_CI_AS;
CREATE DATABASE acuity_base_1 COLLATE Chinese_PRC_CI_AS;
sql
   # mysql
   CREATE DATABASE IF NOT EXISTS `acuity_column` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
   
   # oracle
   create user acuity_column identified by acuity_column;
   grant create session,create table,create sequence,create view,resource to acuity_column;
   
   # SQL Server
   CREATE DATABASE acuity_column COLLATE Chinese_PRC_CI_AS;
   # mysql
   CREATE DATABASE IF NOT EXISTS `acuity_column` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
   
   # oracle
   create user acuity_column identified by acuity_column;
   grant create session,create table,create sequence,create view,resource to acuity_column;
   
   # SQL Server
   CREATE DATABASE acuity_column COLLATE Chinese_PRC_CI_AS;
sql
   # mysql
   CREATE DATABASE IF NOT EXISTS `acuity_none` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
   
   # oracle
   create user acuity_none identified by acuity_none;
   grant create session,create table,create sequence,create view,resource to acuity_none;
   
   # SQL Server
   CREATE DATABASE acuity_none COLLATE Chinese_PRC_CI_AS;
   # mysql
   CREATE DATABASE IF NOT EXISTS `acuity_none` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
   
   # oracle
   create user acuity_none identified by acuity_none;
   grant create session,create table,create sequence,create view,resource to acuity_none;
   
   # SQL Server
   CREATE DATABASE acuity_none COLLATE Chinese_PRC_CI_AS;

导入初始数据

提示

确保 ContextConstants.TENANT_BASE_POOL_NAME_HEADER 跟acuity_base库的前缀一致。

java
public final class ContextConstants {
    // "acuity_base" 一定要和 创建base库(CREATE DATABASE acuity_base_1)时 的前缀一致 
    public static final String TENANT_BASE_POOL_NAME_HEADER = "acuity_base";
}
public final class ContextConstants {
    // "acuity_base" 一定要和 创建base库(CREATE DATABASE acuity_base_1)时 的前缀一致 
    public static final String TENANT_BASE_POOL_NAME_HEADER = "acuity_base";
}

启动项目

  • 先确保nacos、MySQL、Redis、Seata、 RabbitMQ(可选)、等基础服务是否启动成功
  • 逐一启动 OauthServerApplication、SystemServerApplication、BaseServerApplication、GatewayServerApplication、MonitorApplication

通过以下地址访问Swagger文档

欢迎使用天源云Saas快速开发系统