# SpringBootApiJson **Repository Path**: sky0535/SpringBootApiJson ## Basic Information - **Project Name**: SpringBootApiJson - **Description**: 基于 Spring Boot 3 + APIJSON 8 的零代码 CRUD 演示项目 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-14 - **Last Updated**: 2026-09-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SpringBootApiJson APIJSON + SpringBoot 学习项目,包含三个由浅入深的演示模块,展示如何使用 APIJSON 实现「零代码 CRUD」动态服务——前端只需发送 JSON 请求,后端自动生成并执行 SQL,无需为每张表写 Controller/Service/DAO。 ## 模块概览 | 模块 | 定位 | 复杂度 | APIJSON 版本 | JSON 库 | 特点 | |------|------|--------|-------------|---------|------| | [ApiJsonSimple](ApiJsonSimple/README.md) | 最简示例 | ★ | 8.1.6 | fastjson1 | 最小可运行骨架,关闭权限校验,适合新手入门 | | [ApiJsonStandard](ApiJsonStandard/README.md) | 标准示例 | ★★ | 8.1.7 | fastjson2 | 登录鉴权、HikariCP 多数据源、bigint 精度处理、SameSite Cookie | | [ApiJsonBoot](ApiJsonBoot/README.md) | 接近成品 | ★★★ | 8.1.7 | fastjson2 | 远程函数调用、注册/登录/注销、UnitAuto 单元测试、文件上传下载 | ## 项目结构 ``` SpringBootApiJson/ ├── ApiJsonSimple/ # 模块一:最简示例 ├── ApiJsonStandard/ # 模块二:标准示例(常用配置) ├── ApiJsonBoot/ # 模块三:接近成品的完整 Demo ├── sql/ │ └── apijson.sql # MySQL 数据库初始化脚本(Access/Request/Function 等系统表 + 示例数据) ├── libs/ # 本地 JAR 依赖(APIJSON、UnitAuto 等) ├── .idea/ # IntelliJ IDEA 工程配置 ├── .vscode/ # VS Code 配置 └── LICENSE ``` ## 快速开始 ### 1. 环境要求 - JDK 17+ - Maven 3.6+ - MySQL 5.7+ / 8.0+(或 TiDB、MariaDB 等兼容数据库) ### 2. 初始化数据库 执行 [sql/apijson.sql](sql/apijson.sql),创建 `apijson` 库及系统表: | 表名 | 作用 | |------|------| | `Access` | 表级权限配置(哪些角色可 CRUD 哪些表) | | `Request` | 请求结构校验规则 | | `Function` | 远程函数注册表(启动时强制自检) | | `apijson_user` / `apijson_privacy` | 示例业务表(用户公开/隐私信息) | ### 3. 选择模块运行 三个模块相互独立,按需进入对应目录启动: ```bash # 以 ApiJsonStandard 为例 cd ApiJsonStandard mvn spring-boot:run ``` 启动成功后默认监听 **8080** 端口,使用 [APIAuto](http://apijson.cn/api) 或 Postman 发送 POST JSON 请求即可测试: ```bash POST http://localhost:8080/get { "Privacy": { "id": 82001 } } ``` > 各模块的数据库连接配置不同:Simple/Standard 在 `application.yml` 或 `DemoSQLConfig` 中修改,Boot 在 `DemoSQLConfig.java` 的 `gainXxx()` 方法中修改。详见各模块 README。 ## 核心概念 APIJSON 的核心思想是**「前端按需传结构,后端动态出 SQL」**。所有模块共享同一套架构: ``` HTTP 请求 → Controller → Parser → ObjectParser → SQLConfig → SQLExecutor → 数据库 ↓ Verifier(权限校验) ↓ FunctionParser(远程函数) ``` 关键组件通过启动类中的 `APIJSONCreator` 注册,各模块按需重写对应实现类。 ## 参考文档 - APIJSON 官方仓库:https://github.com/Tencent/APIJSON - APIJSON 语法文档:http://apijson.cn/doc/zh/grammar.html - APIJSON 设计规范:https://github.com/Tencent/APIJSON/blob/master/Document.md - 在线调试工具 APIAuto:http://apijson.cn/api ## License Apache License 2.0