🚀 前后端完整代码生成(RBAC+业务实体)· 完整CRUD功能 · 多条件查询 · 状态下拉枚举 · 数据库初始化 · 智能编译启动 · 自动浏览器打开
根据JSON配置文件自动生成完整的项目代码:
从配置到上线,一键完成所有步骤。
text
project-name/
├── backend/ # Spring Boot后端
│ ├── src/main/java/com/example/
│ │ ├── entity/ # 实体类
│ │ │ ├── SysUser.java # 用户实体 (RBAC)
│ │ │ ├── SysRole.java # 角色实体 (RBAC)
│ │ │ ├── SysPermission.java # 权限实体 (RBAC)
│ │ │ └── [业务实体].java # 配置的业务实体
│ │ ├── mapper/ # Mapper接口
│ │ ├── service/ # Service层
│ │ ├── controller/ # Controller层
│ │ │ ├── SysUserController.java # 用户管理API
│ │ │ ├── SysRoleController.java # 角色管理API
│ │ │ ├── SysPermissionController.java # 权限管理API
│ │ │ ├── AuthController.java # 登录认证API
│ │ │ └── [业务实体]Controller.java # 业务实体API
│ │ ├── config/ # 配置类
│ │ │ ├── RedisConfig.java # Redis配置(可选)
│ │ │ └── SwaggerConfig.java # Swagger配置(可选)
│ │ ├── util/ # 工具类
│ │ │ └── RedisUtil.java # Redis工具类(可选)
│ │ └── [Application].java # 启动类
│ ├── src/main/resources/
│ │ ├── application.yml # 配置文件(使用配置的参数)
│ │ └── db/init.sql # 数据库初始化脚本
│ └── pom.xml # Maven配置(含Redis依赖)
├── frontend/ # Vue3前端
│ ├── src/
│ │ ├── views/ # 页面组件
│ │ │ ├── Login.vue # 登录页面
│ │ │ ├── Layout.vue # 布局组件
│ │ │ ├── UserManagement.vue # 用户管理(含搜索、查看、CRUD)
│ │ │ ├── RoleManagement.vue # 角色管理(含搜索、查看、CRUD)
│ │ │ ├── PermissionManagement.vue # 权限管理(含搜索、查看、CRUD)
│ │ │ └── [业务实体]Management.vue # 业务实体管理页面(含搜索、查看、CRUD)
│ │ ├── router/ # 路由配置
│ │ ├── api/ # API接口
│ │ │ ├── user.js # 用户API(列表、查询、新增、修改、删除)
│ │ │ ├── role.js # 角色API(列表、查询、新增、修改、删除)
│ │ │ ├── permission.js # 权限API(列表、查询、新增、修改、删除)
│ │ │ └── [业务实体].js # 业务实体API
│ │ ├── utils/ # 工具函数
│ │ │ └── request.js # Axios封装
│ │ ├── main.js
│ │ └── App.vue
│ ├── index.html
│ ├── vite.config.js # 使用配置的服务器端口
│ └── package.json
└── config.json # 项目配置文件
步骤功能说明1/9验证环境Java/Maven/Node.js/NPM必需检测2/9生成项目代码前后端完整代码生成(使用配置参数)3/9检查端口占用检测配置的端口(默认8080/5173)4/9测试数据库连接验证配置的MySQL连接5/9执行数据库初始化创建表和初始数据6/9构建后端项目Maven编译打包7/9安装前端依赖NPM install8/9启动后端服务在新CMD窗口启动,使用配置端口9/9启动前端并打开浏览器在新CMD窗口启动+自动打开
bash
使用 optimized-one-click-project 创建一个用户信息管理系统
bash
python optimized-one-click-project\scripts\optimized-start-win.py config.json
json
{
"project_name": "user-info-system-v2",
"description": "用户信息管理系统",
"entities": [
{
"name": "UserInfo",
"fields": [
{"name": "userCode", "type": "String", "comment": "用户编码"},
{"name": "username", "type": "String", "comment": "用户名"},
{"name": "realName", "type": "String", "comment": "真实姓名"},
{"name": "email", "type": "String", "comment": "邮箱"},
{"name": "phone", "type": "String", "comment": "电话"}
]
},
{
"name": "Department",
"fields": [
{"name": "deptCode", "type": "String", "comment": "部门编码"},
{"name": "deptName", "type": "String", "comment": "部门名称"},
{"name": "description", "type": "String", "comment": "描述"}
]
}
],
"database": {
"host": "your_ip",
"port": 3306,
"name": "your_database_name",
"user": "your_user",
"password": "your_password"
},
"redis": {
"enable": true,
"host": "your_ip",
"port": 6379,
"password": "your_password"
},
"server": {
"backend_port": 8080,
"frontend_port": 5173
},
"enable_swagger": true
}
参数类型必填说明project_nameString✓项目名称(英文,将作为包名)descriptionString项目描述entitiesArray业务实体列表entities[].nameString✓实体类名entities[].fieldsArray✓字段列表entities[].fields[].nameString✓字段名entities[].fields[].typeString✓字段类型(String/Long/Integer)entities[].fields[].commentString字段注释databaseObject✓数据库配置database.hostString✓数据库主机地址database.portNumber✓数据库端口(默认3306)database.nameString✓数据库名称database.userString✓数据库用户名database.passwordString✓数据库密码redisObjectRedis配置redis.enableBoolean是否启用Redis(默认false)redis.hostStringRedis主机地址redis.portNumberRedis端口(默认6379)redis.passwordStringRedis密码serverObject服务器配置server.backend_portNumber后端端口(默认8080)server.frontend_portNumber前端端口(默认5173)enable_swaggerBoolean是否启用Swagger(默认true)
text
GET /api/users # 列表查询(分页)
GET /api/users/{id} # 根据ID查询(查看详情)
POST /api/users # 新增
PUT /api/users/{id} # 修改
DELETE /api/users/{id} # 删除(物理删除)
GET /api/roles # 列表查询
GET /api/roles/{id} # 根据ID查询
POST /api/roles # 新增
PUT /api/roles/{id} # 修改
DELETE /api/roles/{id} # 删除
GET /api/permissions # 列表查询
GET /api/permissions/{id} # 根据ID查询
POST /api/permissions # 新增
PUT /api/permissions/{id} # 修改
DELETE /api/permissions/{id} # 删除
POST /api/auth/login # 登录
GET /api/auth/info # 获取当前用户信息
text
GET /api/{entities} # 列表查询(分页)
GET /api/{entities}/{id} # 根据ID查询
POST /api/{entities} # 新增
PUT /api/{entities}/{id} # 修改
DELETE /api/{entities}/{id} # 删除
sql
-- 用户表
CREATE TABLE sys_user (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL UNIQUE,
password VARCHAR(100) NOT NULL,
real_name VARCHAR(50),
email VARCHAR(100),
phone VARCHAR(20),
avatar VARCHAR(255),
status TINYINT DEFAULT 1,
create_time DATETIME DEFAULT CURRENT_TIMESTAMP,
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
-- 角色表
CREATE TABLE sys_role (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
role_code VARCHAR(50) NOT NULL UNIQUE,
role_name VARCHAR(50) NOT NULL,
description VARCHAR(255),
status TINYINT DEFAULT 1,
create_time DATETIME DEFAULT CURRENT_TIMESTAMP,
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
-- 权限表
CREATE TABLE sys_permission (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
permission_code VARCHAR(100) NOT NULL UNIQUE,
permission_name VARCHAR(50) NOT NULL,
parent_id BIGINT DEFAULT 0,
type VARCHAR(20) DEFAULT 'menu',
path VARCHAR(255),
method VARCHAR(20),
icon VARCHAR(50),
sort_order INT DEFAULT 0,
status TINYINT DEFAULT 1,
create_time DATETIME DEFAULT CURRENT_TIMESTAMP,
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
entities 配置生成id, create_time, update_time 字段优化项说明多条件查询前端业务页面增加条件查询区域,支持多个字段组合查询状态下拉枚举状态字段统一使用el-select下拉选择框显示(启用/禁用)分页优化完整分页功能,支持页码切换和每页数量调整查看详情使用Descriptions组件优化详情展示图标支持按钮和菜单添加Element Plus图标模板优化提取公共Vue模板,代码结构更清晰
功能说明查询功能前端关键词搜索查看功能根据ID查询详情,对话框展示完整CRUD列表、查询、新增、修改、删除前后端匹配API接口完全对应物理删除去掉逻辑删除字段字段显示表格显示所有字段搜索表单查询/重置按钮
技能已安装完成,随时可以使用! 🚀