Hello, everyone, I am for the majority of programmers brothers worry broken heart xiaobian, every day to recommend a small tool/source, full of your favorites, every day to share a small skill, let you easily save development efficiency, do not work overtime do not stay up late do not lose hair, is my goal!

Jeebase, based on Springboot + VUE (Vue-Element-Admin /Ant Design Pro VUE), a set of Springboot background, two sets of front-end pages, You can choose between ElementUI or AntDesign based front-end interfaces. The Second phase will integrate the Ant Design React front-end framework. In practical application, this framework has been used to develop CMS website system, community forum system, wechat small program, wechat service number, etc., which will be gradually sorted out and open source. The main purpose of this project is to integrate the mainstream technology framework, find and apply the best project practices, and realize the rapid development framework that can be directly used.

Software architecture

  1. Use Spring Boot + MyBatis + MyBatis -plus + Shiro + Jwt + Druid + J2Cache + Ehcache + Redis + Vue2 + ElementUI/AntDesign + Open source frameworks such as Swagger2.
  2. File upload using Qiuniuyun, send SMS using Ali Cloud
  3. The RBAC model was used for permission design, Shiro related implementation was rewritten, and the front and back end separation function was realized with Jwt.
  4. J2Cache is used to realize the second-level cache, which is convenient for switching between small project single deployment and large project distributed deployment, of course, mainly for performance consideration.
  5. Using MyBatis-Plus to achieve the generation of background band code and simplify the preparation of related SQL code.
  6. The front end uses the open source front-end framework Vue-Element-Admin and Ant Design Pro Vue.

Functional specifications

  • The front and back ends are separated, and the menu permissions use vue-Element-admin /Ant Design Pro Vue native method and background resource configuration
  • Support permission control to button, naming rules refer to shiro permission label
  • Privileges using role-based privileges control RBAC model, using Shiro + JWT scheme, you can control to menus, buttons.
  • Support data permission control, using AOP+ Mybatis plug-in to dynamically modify the execution statement
  • Scheduled task Considering distributed deployment, xxl-job is used
  • System logs use the ELK deployment architecture of the distributed real-time log analysis solution

Directory description

  • Jeebase-service Java background service code

  • Jeebase -portal Vue-element-admin front-end page code for background management in version 4.x

  • Jeebase -portal-ant- Design vue-element-admin Ant Design Pro vue version of the back-end management front-end page code

  • Jeebase -wechat small program and front-end page code of wechat service number

  • Jeebase-wechat/Jeebase-Vant The front-end page code of wechat service number with Favorable Vant as the front-end framework

  • Jeebase-wechat/Jeebase-color Front-End page code of wechat small program with color as front-end framework (Because vant’s small program front-end framework is too intrusive, so I choose ColorUI as front-end framework)

The front screen

The back-end screenshots

At the end

This issue is to share here, I am xiaobian South wind blowing, focus on sharing interesting, novel, practical open source projects and developer tools, learning resources! I hope to learn and communicate with you together. Welcome to follow my official account ** [Github navigation station] **.