[开源]开源企业级JavaWeb开发框架,最大限度的提高Web开发生产力
![[开源]开源企业级JavaWeb开发框架,最大限度的提高Web开发生产力](https://yy123.ink/api/img/1782582902240-9syl9c.jpg)
一、开源项目简介
BudWk V7 进行了大量重构,与之前版本结构大不相同,增加网关中心、认证中心、控制中心等,并且完全组件化、配置化,大大减轻开发工作量,提升开发效率的同时为产品升级迭代提供了极大便利。
BudWk 原名 NutzWk ,是基于国产框架 nutz 及 nutzboot 开发的开源Web基础项目,集权限体系、系统参数、数据字典、站内消息、定时任务、CMS、微信等最常用功能,不庞杂、不面面俱到,使其具有上手容易、开发便捷、扩展灵活等特性,特别适合各类大中小型定制化项目需求。
二、开源协议
使用MIT开源协议
三、界面展示
四、功能概述
微服务分布式+API网关+前后端分离开发框架
BudWk V7 进行了大量重构,与之前版本结构大不相同,增加网关中心、认证中心、控制中心等,并且完全组件化、配置化,大大减轻开发工作量,提升开发效率的同时为产品升级迭代提供了极大便利。
简单快捷
基于 NutzBoot 和 Nuxt + Vue + ElementUI 快速构建 Web应用系统
功能完善
封装完善的后台管理功能,包括用户、单位、权限、日志、字典、消息、CMS、微信、定时任务等基础功能
组件化开发
封装各功能组件,使开发人员可以专注于业务实现
最新架构
采用最流行的微服务分布式+API网关+前后端分离整体架构思想进行设计
案例丰富
有大量的物联网、车联网、电商、电子政务、金融等行业案例
用户广泛
合肥、南京、北京、上海、杭州、成都、山东等各地公司用户
五、技术选型
本版说明(BudWk v7.x)
运行环境
- JDK 11 + 或 OpenJDK 11 +
- Redis 4.0.8 +
- MariaDB 10.x + 或 MySql 5.7、Oracle、SqlServer、达梦等
- Nacos 2.0.3 +
开发工具
- IntelliJ IDEA
- Visual Studio Code
- Node 12.13.0 +
- Maven 3.6.3 +
- Git
架构图
![[开源]开源企业级Java Web开发框架,最大限度的提高Web开发生产力](https://yy123.ink/api/img/1782582902240-9syl9c.jpg)
目录结构
budwk -- 根目录 │ ├─wk-starter -- 组件中心 │ │ ├─wk-starter-common -- 通用类组件 │ │ ├─wk-starter-database -- 数据库组件 │ │ ├─wk-starter-config -- 配置组件(商业版) │ │ ├─wk-starter-dependencies -- 所有依赖 │ │ ├─wk-starter-dubbo -- Dubbo组件 │ │ ├─wk-starter-email -- Email组件 │ │ ├─wk-starter-gateway -- 网关组件 │ │ ├─wk-starter-job -- 简易定时任务组件 │ │ ├─wk-starter-log -- 日志及SLog组件 │ │ ├─wk-starter-openapi -- 接口文档生成组件 │ │ ├─wk-starter-security -- 权限验证组件 │ │ ├─wk-starter-sms -- 短信发送组件 │ │ ├─wk-starter-storage -- 文件存储组件 │ │ ├─wk-starter-web -- WEB拦截跨越表单验证组件 │ ├─wk-gateway -- 网关中心 │ │ ├─websocket -- WebScoket支持(商业版) │ ├─wk-platform -- 控制中心 │ │ ├─wk-platform-common -- 通用类供其他模块调用 │ │ ├─wk-platform-server -- 服务类提供API及RPC服务 │ ├─wk-ucenter -- 认证中心 │ ├─wk-cms -- CMS管理 │ │ ├─wk-cms-common -- 通用类供其他模块调用 │ │ ├─wk-cms-server -- 服务类提供API及RPC服务 │ ├─wk-wechat -- 微信管理(商业版) │ │ ├─wk-wechat-common -- 通用类供其他模块调用(商业版) │ │ ├─wk-wechat-server -- 服务类提供API及RPC服务(商业版) │ ├─wk-mini -- 单应用Mini版本 │ ├─wk-vue-admin -- Vue前端代码 │ │ ├─pages-home -- 消息中心 │ │ ├─pages-platform -- 控制中心 │ │ ├─pages-cms -- CMS管理 │ │ ├─pages-wechat -- 微信管理(商业版)
- 代码生成器IDEA插件,请下载安装 budwk-codegenerator
- 推荐组件中心、控制中心、前端等功能模块独立创建Git仓库,便于权限管理及升级迭代
技术选型
后端技术
技术
名称
Nutz
JavaEE应用框架
NutzBoot
微服务框架
SaToken
权限框架
Druid
数据库连接池
Nacos
配置及注册中心
Dubbo
分布式服务框架
Redis
分布式缓存数据库
Quartz
作业调度框架
IdGenerator
雪花主键生成
Hutool
工具集合
前端技术
技术
名称
Vue.js
MVVM框架
Nuxt.js
Vue通用应用框架
Element
基于Vue的UI框架
Font-awesome
字体图标
开发指南
- 确保 MySql、Redis、Nacos 默认端口配置并已启动
- MySql 创建名为 budwk_v7 的空数据库,在每个微服务模块启动时会自动建表,同时初始化数据
- 在单个NB模块下执行 mvn compile nutzboot:run 运行或 mvn package nutzboot:shade 生成可执行jar包
- 在后端项目根目录执行 mvn -Dmaven.javadoc.skip=true -Dmaven.test.skip=true -Dnutzboot.dst=E:/dst clean package nutzboot:shade 可将所有可运行jar包生成到指定位置
- 分别启动jar文件 nohup java -jar budwk.jar >/dev/null 2>&1 &
- 正常启动前端后访问 http://127.0.0.1:8800 用户名 superadmin 密码 1
- API调试 http://127.0.0.1:9900/platform/openapi http://127.0.0.1:9900/ucenter/openapi 等
服务器部署
jar 运行
- 指定配置文件运行 nohup java -jar -Dnutz.profiles.active=pro -Xmx450m wk-platform-server.jar >/dev/null 2>&1 &
docker 部署
wk-gateway
- 编译可执行jar mvn clean package nutzboot:shade
- 编译docker image docker build -t wizzer/budwk-wk-gateway:v7 .
wk-platform
- 编译可执行jar mvn clean package nutzboot:shade
- 编译docker image docker build -t wizzer/budwk-wk-platform:v7 .
wk-ucenter
- 编译可执行jar mvn clean package nutzboot:shade
- 编译docker image docker build -t wizzer/budwk-wk-ucenter:v7 .
其他NB模块省略...然后挂载 /conf 路径,把配置文件 application.yaml 放好
源码下载源码已同步于GitCoffee,账户打通公测中,一飞开源账号授权登录如有问题,可独立注册GitCoffee新账号。问题反馈,请关注微信公众号:一飞开源。【一飞开源,正在致力于打造活力开源社区,共建开源新生态!】
