NutzWk企业级开发框架

联合创作 · 2023-09-20 10:12

NutzWk,开源企业级 Java Web 开发框架。

“快速开发、功能丰富、扩展性强、性能优越”,在力所能及的情况下,最大限度的提高Web开发人员的生产力。

https://nutzwk.wizzer.cn V5演示地址

https://demo.budwk.com V6演示地址

https://budwk.com/donation 捐赠者列表

前言

本项目发展自2010年,2012年开始用于商业项目,至今已服务于全国各地公司大大小小数千个项目,行业涉及政务、电商、物联网等,随着个人经验积累及从事行业的不同分别发布了1.0至5.0多个版本,每个版本都是完整运行且完全开源免费的,您可以根据项目规模选择不同版本。本项目案例众多,省厅级项目、市级平台、大数据项目、电商平台、物联网平台等等,issues里有部分案例截图,限于篇幅不一一罗列。

我们有强大的后援 —— Nutz 社区支持 https://nutz.cn 及 Nutz 使用手册 https://nutzam.com/core/nutz_preface.html

版本说明

  • v6.x - zookeeper 微服务分布式版本 前后端分离,前端 nuxt + vue + elementUI
  • v6.x - nacos 微服务分布式版本 前后端分离,前端 nuxt + vue + elementUI
  • v6.x - mini 微服务单应用版本(一个 jar 或 war 包) 前后端分离,前端 nuxt + vue + elementUI
  • v5.x - zookeeper 微服务分布式版本 前端 jQuery + bootsrtap 或 jQuery + vue.js + elementUI
  • v5.x - nacos 微服务分布式版本 前端 jQuery + bootsrtap 或 jQuery + vue.js + elementUI
  • v5.x - mini 微服务单应用版本(一个 jar 或 war 包) 前端 jQuery + bootsrtap 或 jQuery + vue.js + elementUI
  • v4.x - 单应用版本(war 包) 前端 jQuery + bootsrtap
  • v3.x - 单应用版本(war 包) 前端 jQuery + bootsrtap
  • v1.x - 单应用版本(war 包) 前端 jQuery + easyUI
版本名称 版本特点 版本地址 运行方式 后端主要技术 前端主要技术 浏览器兼容性
BudWk v6.x-zookeeper 微服务分布式 + 前后端分离 v6.x-zookeeper jar,war nutzboot + dubbo + zookeeper + shiro nuxt + vue + elementUI Chrome,IE10+
BudWk v6.x-nacos 微服务分布式 + 前后端分离 v6.x-nacos jar,war nutzboot + dubbo + nacos + shiro nuxt + vue + elementUI Chrome,IE10+
BudWk v6.x-mini 微服务单应用 + 前后端分离 v6.x-mini jar,war nutzboot + shiro nuxt + vue + elementUI Chrome,IE10+
NutzWk v5.x-zookeeper 微服务分布式 + 前端混合模式 v5.x-zookeeper jar,war nutzboot + dubbo + zookeeper + shiro + beetl vue + elementUI + jquery 或 jquery + bootstrap 两个版本 Chrome,IE9+
NutzWk v5.x-nacos 微服务分布式 + 前端混合模式 v5.x-nacos jar,war nutzboot + dubbo + nacos + shiro + beetl vue + elementUI + jquery 或 jquery + bootstrap 两个版本 Chrome,IE9+
NutzWk v5.x-mini 微服务单应用 + 前端混合模式 v5.x-mini jar,war nutzboot + shiro + beetl vue + elementUI + jquery Chrome,IE9+
NutzWk v4.x 模块化单应用 v4.x war nutz + shiro + beetl jquery + bootstrap Chrome,IE7 +
NutzWk v3.x 单应用 v3.x war nutz + shiro + beetl 或 nutz + shiro + velocity 两个版本 jquery + bootstrap Chrome,IE7 +
NutzWk v1.x 单应用 v1.x war nutz + shiro + velocity jquery + easyUI IE6 +

本版说明(v5.x-zookeeper)

NutzWk 5.x-zookeeper 运行必备环境:

  • JDK 8 181 + 或 OpenJDK 11 +
  • Maven 3.5.3 +
  • Redis 4.0.8 +
  • MySql 5.7 + 或 MariaDB、Oracle、SqlServer、达梦等
  • Zookeeper 3.4.11 +

NutzWk 5.x-zookeeper 技术选型:

  • 核心框架:NutzBoot、Nutz
  • 分布式框架:Dubbo(RPC)、Zookeeper(注册中心)、Sentinel(流控-可选)、Seata(分布式事务-可选)
  • 安全框架:Shiro、JWT
  • 任务调度:Quartz
  • 数据库连接池:Druid
  • 支持数据库:MySql、MariaDB、Oracle、SqlServer、达梦等
  • 缓存框架:Redis、Ehcache、Wkcache
  • 订阅发布:Redis
  • 文件系统:Ftp(默认)、FastDfs等
  • 可扩展功能:WebSocket-Nutz、消息队列-Rabbitmq、搜索引擎-Elasticsearch、工作流-Activiti等
  • 前端框架:Bootstrap + JQuery 或 Vue + Element (推荐)

NutzWk 5.x 使用说明:

名称 介绍
wk-framework 一些基类及公共方法的封装
wk-model POJO类,枚举类,常量类
wk-common 业务接口类
wk-nb-service-sys 系统管理模块,dubbo服务端,NB项目,权限体系
wk-nb-service-cms CMS管理模块,dubbo服务端,NB项目,ig及wkcache演示
wk-nb-service-wx 微信管理模块,dubbo服务端,NB项目,微信及微信支付功能演示
wk-nb-task 定时任务模块,dubbo服务端,NB项目,支持quartz集群
wk-nb-web-api API JWT Token示例,dubbo消费端,NB项目,Mvc
wk-nb-web-platform WEB管理后台jQuery+Bootstrap版,dubbo消费端,NB项目,Mvc
wk-nb-web-vue WEB管理后台Vue.js混合版,dubbo消费端,NB项目,Mvc

models

  • 确保 MySql、Redis、Zookeeper 默认端口配置并已启动好
  • MySql 创建名为 nutzwk_nb 的空数据库,在每个NB(nutzboot缩写)模块启动时会自动建表,同时初始化数据
  • 项目根目录执行 mvn clean install -Dmaven.test.skip=true
  • 在单个NB模块下执行 mvn compile nutzboot:run 运行或 mvn package nutzboot:shade 生成可执行jar包
  • 在项目根目录执行 mvn -Dnutzboot.dst=E:/dst clean package nutzboot:shade 可将所有可运行jar包生成到指定位置
  • 启动顺序是 sys --> cms[可选] --> wx[可选] --> task[可选] --> web-platform 或 web-vue --> web-api[可选]
  • 正常启动后访问 http://127.0.0.1:8080/sysadmin 用户名 superadmin 密码 1
  • 框架详细介绍及代码生成器的使用等内容请仔细阅读 wk-wiki
  • 若觉得项目复杂上手较难,可以从最简单的一个NB项目学起 wizzer.cn 源码

项目部署

  • 内置配置文件启动 nohup java -jar wk-nb-service-sys.jar & 带参数 -Dnutz.profiles.active=prod 可加载 application-prod.properties 文件
  • 外置配置文件启动 nohup java -Dnutz.boot.configure.properties.dir=/data/nutzwk/sys/ -jar wk-nb-service-sys.jar & 此时加载文件夹所有 *.properties 配置文件
  • 生产环境可以使用 PythonWk 进行部署,登陆后台运维中心可在线更新jar包及配置文件等

鸣谢

浏览 6
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报