NutzWk

企业级开发框架 NutzWk

Apache
Java HTML/CSS 查看源码»
跨平台
2015-06-04
wendal

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

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

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

https://wizzer.cn/donation 捐赠者列表

前言

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

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

版本说明

  • NutzWk v5.x 微服务版本(分支名:nutzboot-dubbo,微服务dubbo分布式版本)

  • NutzWk v4.x 模块化版本(分支名:modular,统一提供代码生成器及IDEA可视化插件)

  • NutzWk v3.x 单应用版本(分支名:bootstrap-3.3.x,CMS+微信+系统+权限+常用功能封装 beetl/velocity)

  • NutzWk v1.0 传统版(分支名:master,velocity 支持IE6)

本版说明(v5.x)

NutzWk 5.x 运行必备环境:

  • 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 技术选型:

  • 核心框架:Nutzboot

  • 分布式框架:Dubbo、Zookeeper

  • 安全框架:Shiro

  • 任务调度:Quartz

  • 数据库连接池:Druid

  • 支持数据库:MySql、MariaDB、Oracle、SqlServer、达梦等

  • 缓存框架:Redis、Ehcache、Wkcache

  • 订阅发布:Redis

  • 可扩展功能: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管理后台(可选),dubbo消费端,NB项目,Mvc
wk-nb-web-vue WEB管理后台Vue.js混合版(可选),dubbo消费端,NB项目,Mvc
  •   确保 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 jar -jar wk-nb-service-sys.jar & 带参数 -Dnutz.profiles.active=prod 可加载 application-prod.properties 文件
  •   外置配置文件启动 nohup jar -Dnutz.boot.configure.properties.dir=/data/nutzwk/sys/ -jar wk-nb-service-sys.jar & 此时加载文件夹所有 *.properties 配置文件
  •   生产环境可以使用 PythonWk 进行部署,登陆后台运维中心可在线更新jar包及配置文件等

分布式事务

  •   涉及分布式的NB模块 pom.xml 添加
    <dependency>
        <groupId>org.nutz</groupId>
        <artifactId>nutzboot-starter-fescar</artifactId>
    </dependency>
  •   涉及分布式的NB模块,配置文件中添加
    fescar.enabled=true
    # applicationId 无需设置,会自动获取
    # fescar.applicationId=
    fescar.txServiceGroup=wk_nb_tx_group
  •   下载并启动 fescar服务端
  •   业务方法上加上注解 @GlobalTransactional(timeoutMills = 300000, name = "dubbo-demo-tx") 即可
  •   与本地事务注解 @Aop(TransAop.READ_COMMITTED) 不冲突
  •   业务方法内不要加 try catch (与本地事务注解一样)要让异常抛出来事务才能工作
  •   分布式事务不是越多越好,可以在核心业务如交易环节增加,建议实现乐观锁来预防脏数据产生

鸣谢

  •   @wendal (代码贡献者,技术大牛,Nutz主要作者,无所不知且乐于助人)

  •   @rekoe (代码贡献者)

  •   @enilu (3.x 代码生成器及IDEA插件贡献者)

  •   @loyalove (3.x Vue代码贡献者)

  •   @threefish (控制类快速定位模板页面IDEA插件贡献者)

  •   以及交流群里热心的小伙伴们~

的码云指数为
超过 的项目
加载中
此软件有 16 条评论,请先登录后再查看。

BudWk 6.0.1 Alpha 发布,Java 微服务分布式开发框架

BudWk 原名 NutzWk ,从V6 版本起更名为 BudWk。 V6演示地址: https://demo.budwk.com V5演示地址: https://nutzwk.wizzer.cn 后端技术:nutzboot + dubbo + redis + zookeeper + shiro + ...

01/18 22:54

NutzWk 5.2.6 发布,Java 微服务分布式开发框架

项目介绍: NutzWk 是有五年多历史的Java Web开源开发框架,其5.x 是Java 微服务分布式版本,采用nutzboot(nutz核心)、dubbo、redis、zookeeper、shiro、quartz、beetl、logback、vue、senti...

2019/08/01 12:12

NutzWk 5.2.5 发布,Java 微服务分布式开发框架

NutzWk 5.2.5 更新内容: 运维中心增加磁盘及TCP连接数等信息展示(vue版); 修复角色管理中搜索用户时越权的判断条件错误(vue版); 修复角色管理中为角色分配菜单应加载当前用户拥有的权限菜单...

2019/05/21 10:05

NutzWk 5.2.4 发布,Java 微服务分布式开发框架

NutzWk 5.2.4 更新内容: 修复Vue版管理后台,启用/禁用用户时会清空用户表的bug,受影响版本5.2.3/5.2.2/5.2.1/5.1.5/5.1.4; 修复角色业务类事务注解与异步注解同时存在,导致事务失败的bug,受...

2019/04/22 17:37

NutzWk 5.2.3 发布,Java 微服务分布式开发框架

NutzWk 5.2.3 更新内容: Result 类支持传递一个value为int类型的枚举类对象; Pagination 类支持泛型,getList() 不用强转了; nutzboot 升级为2.3.4.v20190410 & druid更新到1.1.16; element...

2019/04/10 17:47

NutzWk 5.2.2 发布,Java 微服务分布式开发框架

NutzWk 5.2.2 更新内容: nutzboot 升级为v2.3.3.v20190329 支持fescar分布式事务并添加使用说明 element 升级为2.7.0,原生支持treetable 添加 listPageMap 和 listEntity 自定义sql查询方法...

2019/03/30 12:42

NutzWk 5.2.1 发布,5.x 微服务版本发布一周年了

NutzWk 5.2.1 更新内容: 菜单现在可以切换到左侧或顶部(by 犬夜叉与小木偶); 依赖模块未启动时,登陆后台会显示更友好的错误提示; 运维中心,应用管理相关列表页,屏蔽用户关键信息的输出; ...

2019/03/21 13:28

NutzWk 5.2.0 重磅发布,Java 微服务分布式开发框架

NutzWk 5.2.0 更新内容: 运维中心重磅功能完成,可在线上传jar包、编辑配置文件、关闭实例进程、启动新实例进程、动态修改日志等级、查看服务器资源占用情况等,支持分布式部署; 文件上传由...

2019/03/18 22:20

NutzWk 5.1.5 发布,Java 微服务分布式开发框架

NutzWk 5.1.5 更新内容: nutzboot 版本更新为 2.3.0.v20190220; nutz 及 nutzwx 版本更新为 1.r.68.v20190220; 修复用户修改密码及布局皮肤时未更新缓存的问题; 演示地址(Vue版本): ht...

2019/02/21 21:56

NutzWk 5.1.4 发布,Java 微服务分布式开发框架

NutzWk 5.1.4 更新内容: 集成 Sentinel 流控框架,支持流量控制、熔断降级、系统负载保护等(默认不启用); 日志系统从 log4j 改为 logback,编写starter-logback-exts 方便微服务模块调用...

2019/01/23 15:51

没有更多内容

加载失败,请刷新页面

1
回答
nutewk 不能启动

@wendal 你好,想跟你请教个问题:nutewk 不能启动

2016/08/22 14:25

没有更多内容

加载失败,请刷新页面

没有更多内容

nutzwk导入

nutzwk是maven项目,所以在导入之前建议安装好maven,git,jdk,mysql 1.在码云上找到nutzwk的最新的地址 https://gitee.com/wizzer/NutzWk 2.正常的git导入流程 到这里,叉掉对话框就可以了...

2017/10/18 15:57
1.6K
0
NutzWk 5.0.x 微服务分布式版本开发及部署说明

NutzWk 5.x 已发布一段时间,这段时间基于此版本开发了智慧水务系统(NB-IOT)、某物联网平台、某设备租赁平台、某智慧睡眠平台、某智慧园区项目等,开发和部署过程中遇到一些小问题,开这个帖...

2018/06/06 23:46
413
0
NutzWk 5.2.0(一周年版) 微服务开发框架,运维中心重磅发布

NutzWk 5.2.0 版本已发布,演示地址: https://nutzwk.wizzer.cn 源码Github:https://github.com/Wizzercn/NutzWk 码云Gitee:https://gitee.com/wizzer/NutzWk 后端技术架构:nutzboot + ...

2019/03/19 22:05
80
0
开源:公司群订盒饭小系统(基于NutzWk v3.2 开发)

基于 NutzWk 3.2.x 和 第五代QQ机器人实现的,适合20-200人公司,集体订盒饭用。

2016/07/28 11:58
804
1
Idea git 强制同步fork的项目,会覆盖本地上传的文件吗?

场景描述:fork大神的代码后,本地启动可能会做配置更改,好不容启动好了,大神那更新了(新增功能,bug修改),这时候怎么把大神的代码同不来,而不影响自己的更改? 搜索了半天也没有几个很...

2018/12/14 15:38
94
0
群聊天机器人

最近看到一个群聊天机器人,是用qq机器人来实现的。可以实现订餐统计功能。 [公司群订餐小系统](https://github.com/Wizzercn/NutzWk/tree/robot) [开源:公司群订盒饭小系统(基于NutzWk v3...

2018/04/23 10:04
90
0
nginx里配置跨域

发布于 881天前 作者 wendal 1404 次浏览 复制 上一个帖子 下一个帖子 标签: nginx 跨域 if ($request_method = OPTIONS ) { add_header Access-Control-Allow-Origin "*"; ...

2018/06/14 08:33
80
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部