项目介绍
Jeebase是一款前后端分离的开源开发框架,基于springboot+vue(vue-element-admin/Ant Design Pro Vue)开发,二期会整合react前端框架Ant Design React。在实际应用中已经使用这套框架开发了CMS网站系统,社区论坛系统,微信小程序,微信服务号等,后面会逐步整理开源。
本项目主要目的在于整合主流技术框架,寻找应用最佳项目实践方案,实现可直接使用的快速开发框架。
github: https://github.com/wmz1930/Jeebase
gitee: https://gitee.com/wmz1930/Jeebase
软件架构
1. 使用Spring Boot + MyBatis + MyBatis-Plus + Shiro + Jwt + Druid + J2Cache + Ehcache + Redis + Vue2 + ElementUI/Ant Design Pro Vue + Swagger2等开源框架
2. 文件上传使用七牛云,发送短信使用阿里云
3. 权限设计使用RBAC模型,重写Shiro相关实现,结合Jwt实现前后端分离功能。
4. 使用J2Cache 实现二级缓存,便于小项目单机部署和大项目分布式部署之间的切换,当然主要是为了性能方面考虑。
5. 使用MyBatis-Plus实现后台代码的生成及简化相关sql代码的编写。
6. 前端使用开源前端框架[vue-element-admin](https://github.com/PanJiaChen/vue-element-admin),在其基础上实现了后台配置菜单及权限。
功能说明
1. 前后端分离,菜单权限使用vue-element-admin原生方法和后台资源配置两种方案
2. 支持权限控制到按钮,命名规则参考shiro权限标签
3. 权限使用基于角色的权限控制RBAC模型,使用shiro+jwt的方案,可以控制到菜单,按钮。
4. 支持数据权限控制,使用AOP+mybatis插件动态修改执行语句
5. 定时任务考虑到分布式部署,所以使用xxl-job
6. 系统日志使用分布式实时日志分析解决方案ELK部署架构
目录说明
1. jeebase-service Java后台服务代码
2. jeebase-vue vue-element-admin 3.x版本的后台管理前端页面代码
3. jeebase-vue-v2 vue-element-admin 4.x版本的后台管理前端页面代码
4. jeebase-wechat 微信小程序及微信服务号前端页面代码
5. jeebase-wechat/jeebase-vant 以有赞vant为前端框架的微信服务号前端页面代码
6. jeebase-wechat/jeebase-color 以color为前端框架的微信小程序前端页面代码(因有赞vant的小程序前端框架侵入性太强,故选择ColorUI为前端框架)
项目界面
一、微信小程序界面
首页
商品分类页
购物车