# openwtai-base **Repository Path**: fuyang_lipengjun/openwtai-base ## Basic Information - **Project Name**: openwtai-base - **Description**: 微同商城商业版基础架构----一个前后端分离的Java快速开发脚手架,前端基于 Vue3、Vite、TypeScript、Element Plus、Pinia、Axios、ECharts 等,后台基于 Java 21、 Spring Boot 3、MyBatis-Plus、MySQL、Redis、JWT 等。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://openwtai.com/platform-mall/#/login - **GVP Project**: No ## Statistics - **Stars**: 924 - **Forks**: 472 - **Created**: 2019-03-05 - **Last Updated**: 2026-05-18 ## Categories & Tags **Categories**: backend **Tags**: None ## README # 微同软件管理系统 ## 介绍 ### 服务器推荐配置 | 名称 | CPU | 内存 | 硬盘 | 价格 | | -------- | -----: | :----: | :----: | :----: | | 服务器(标准型S2机型 5M 双机) | 2核 | 8G | 50G | 2970元/三年 | | MySQL高可用版| 1核 | 1G | 100G | 423元/三年 | | COS资源包 | 大小 | 价格 | | -------- | -----: | :----: | | 标准型存储容量 |200GB |1年 171元| | 下行流量 | 500GB |3个月 177元| [抢购地址](https://curl.qcloud.com/7X1upulR) ### 项目说明 - openwtai-base是一个轻量级的,前后端分离的Java快速开发平台 - JavaDoc:https://apidoc.gitee.com/fuyang_lipengjun/openwtai-base/ ### 优势 - 严格遵循阿里编码规约开发,便于阅读及二次开发 - 实现前后端分离,通过token进行数据交互,前端再也不用关注后端技术 - 灵活的权限控制,可控制到页面和按钮,满足绝大部分的权限需求 - 可在线生成vue、controller、entity、xml、dao、service、vue、sql代码,增删改查代码一键生成,减少80%以上的开发任务 - 引入quartz定时任务,可动态完成任务的添加、修改、删除、暂停、恢复及日志查看等功能 - 引入API模板,根据token作为登录令牌,极大的方便了APP接口开发 - 引入Hibernate Validator校验框架,轻松实现后端校验 - 引入云存储服务,已支持:七牛云、阿里云、腾讯云、本地存储 - 自定义实现swagger文档支持,方便编写API接口文档 - 使用Mybatis拦截器实现数据权限,对代码侵入小 - 接口支持微信开放平台、微信公众平台、微信小程序、微信公众号开发 - 移动端已支持微信小程序登录、微信公众号登录、支付宝小程序登录 ### 技术选型: #### 后端 - Java 21 - Spring Boot 3.5.13 - Apache Shiro 2.1.0 - MyBatis-Plus 3.5.16 - dynamic-datasource 4.5.0 - Druid 1.2.28 - Quartz 2.5.2 - Knife4j 4.6.0 - Redis - MySQL 8 - lombok 1.18.44 - jwt 0.11.5 - easypoi 4.5.0 #### 前端 - Vue 3.5 - Vue Router 4 - Pinia 3 - Element Plus 2 - Vite 5 - ECharts 5 ### 项目结构 ``` openwtai-base ├─sql 项目SQL语句 │ ├─openwtai-admin 管理后台(port:8888) │ ├─openwtai-ui 管理后台UI │ ├─openwtai-api 接口服务(port:8889) │ ├─openwtai-biz 业务、数据处理 │ └─openwtai-common 公共类 ``` ### 实现功能 ``` - 系统管理 - 菜单管理 - 组织机构 - 系统参数 - 字典管理 - 文件上传 - 短信配置 - 定时任务 - 系统日志 - 权限管理 - 管理员列表 - 角色管理 - 开发工具 - 代码生成器 - 缓存信息 - SQL监控 - 接口文档 - 公众号管理 - 公众号消息 - 公众号菜单 - 消息模板 - 消息模版日志 - 素材管理 - 草稿箱 - 发布记录 - 自动回复规则 - 带参二维码 - 用户管理 - 用户管理 ``` **效果图:** - 菜单管理 ![UNKNOWN_23_06_06.PNG](https://platform-wxmall.oss-cn-beijing.aliyuncs.com/image/2026_05_16/UNKNOWN_23_06_06.png) - 字典管理 ![UNKNOWN_23_07_07.PNG](https://platform-wxmall.oss-cn-beijing.aliyuncs.com/image/2026_05_16/UNKNOWN_23_07_07.png) - 文件上传 ![UNKNOWN_23_07_57.PNG](https://platform-wxmall.oss-cn-beijing.aliyuncs.com/image/2026_05_16/UNKNOWN_23_07_57.png) - 深色主题 ![UNKNOWN_23_08_37.PNG](https://platform-wxmall.oss-cn-beijing.aliyuncs.com/image/2026_05_16/UNKNOWN_23_08_37.png) - 兼容手机端 ![UNKNOWN_23_10_19.PNG](https://platform-wxmall.oss-cn-beijing.aliyuncs.com/image/2026_05_16/UNKNOWN_23_10_19.png) ### 本地启动 建议至少准备: - JDK 21 - Maven 3.9+ - MySQL 8.x - Redis 6.x 或更高版本 - Node.js 18+ 或 20+ - npm 9+ 或与本机现有前端依赖兼容的版本 #### 1. 初始化数据库 项目初始化 SQL 位于 `_sql/` 目录: - `_sql/openwtai-mysql.sql` - `_sql/quartz_mysql.sql` 先创建数据库,例如 `base`,再依次执行上述两个脚本。 #### 2. 修改本地配置 开发环境配置文件: - [openwtai-admin/src/main/resources/application-dev.yml](/Users/pengjun/Code/gitee/openwtai-base/openwtai-admin/src/main/resources/application-dev.yml) - [openwtai-api/src/main/resources/application-dev.yml](/Users/pengjun/Code/gitee/openwtai-base/openwtai-api/src/main/resources/application-dev.yml) 当前默认开发配置包含: - MySQL:`jdbc:mysql://localhost:3306/openwtai-base` - 用户名:`root` - 密码:`root1234` - Redis:`127.0.0.1:6379` 如果本地环境不同,先改这里。 #### 3. 启动服务 方式一:直接运行启动类 - `openwtai-admin`:`com.openwtai.OpenWtAiAdminApplication` - `openwtai-api`:`com.openwtai.OpenWtAiApiApplication` 方式二:Maven 启动 ```bash mvn -pl openwtai-admin spring-boot:run mvn -pl openwtai-api spring-boot:run ``` 启动后默认地址: - 后台管理服务:`http://localhost:8888/openwtai-admin` - App 接口服务:`http://localhost:8889/openwtai-api` 接口文档入口: - 后台管理文档:`http://localhost:8888/openwtai-admin/doc.html` - App 接口文档:`http://localhost:8889/openwtai-api/doc.html` ### 后端部署 - 创建数据库base - mysql执行`_sql/openwtai-mysql.sql、quartz_mysql.sql`文件,初始化数据 - 修改admin、api模块下`application-dev.yml`,修改MySQL账号和密码 - 运行OpenWtAiAdminApplication.java启动后台管理接口服务 -接口:http://localhost:8888/openwtai-admin - 运行OpenWtAiApiApplication.java启动api接口服务 -接口:http://localhost:8889/openwtai-api - 接口路径:http://localhost:8888/openwtai-admin/doc.html - 接口路径:http://localhost:8889/openwtai-api/doc.html ### 提交反馈 1. 欢迎提交 issue,请写清楚遇到问题的原因,开发环境,复显步骤。 2. 官方QQ群: - 微同软件 ①群 - 微同软件 ②群 - 微同软件 ③群 ### 环境推荐 - 服务器环境 - CentOS - Nginx - JDK 21 - MySQL 8.0 - Redis - 开发工具 - IntelliJ IDEA、Eclipse - JetBrains WebStorm - Navicat for MySQL - Xshell - Xftp - Postman ### 生产环境打包 - 打包 - mvn clean - mvn package -P prod - 将openwtai-admin.jar、openwtai-api.jar上传至服务器 - 启动服务 ##### 在服务器编写脚本 > vim startOpenWtAiAdminService.sh ~~~bash (netstat -tlnp|grep 8890|awk '{print $7}'|awk -F '/' '{print $1}') |xargs kill -9 echo "................kill the process openwtai-admin.............................." nohup java -jar openwtai-admin.jar & sleep 5s tail -f /home/logs/openwtai-admin/info.log ~~~ > vim startOpenWtAiApiService.sh ~~~bash (netstat -tlnp|grep 8889|awk '{print $7}'|awk -F '/' '{print $1}') |xargs kill -9 echo "................kill the process openwtai-api.............................." nohup java -jar openwtai-api.jar & sleep 5s tail -f /home/logs/openwtai-api/info.log ~~~ ##### 执行这两个脚本,启动服务 ### 前端启动 - 请看:[./openwtai-ui/README.md](./openwtai-ui/README.md) ### 后台管理系统默认密码 - admin admin