Score
0
33 Unstar Star 247 Fork 86

wenbin / springboot-managerJavaMIT

Create your Gitee Account
Explore and code with more than 5 million developers,Free private repositories !:)
Sign up
基于SpringBoot + Thymeleaf + Layui + Apache Shiro + Redis + Mybatis Plus 的后台管理系统 支持菜单权限与数据权限 数据库支持 MySQL、Oracle、sqlServer 等主流数据库 提供代码生成器,基本增删改查无需编写,可快速完成开发任务。 后台接口RESTful 风格,支持前后端分离,可与app公用一套接口。 开发最精简,可当脚手架,适合你来 DIY spread retract

http://manager.aitangbao.com.cn

Clone or download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README.md

springboot-manager

介绍

基于SpringBoot + Thymeleaf + Layui + Apache Shiro + Redis + Mybatis Plus 的后台管理系统
支持菜单权限与数据权限
数据库支持 MySQL、Oracle、sqlServer 等主流数据库
提供代码生成器,基本增删改查无需编写,可快速完成开发任务。
后台接口RESTful 风格,支持前后端分离,可与app公用一套接口。
开发最精简,可当脚手架,适合你来 DIY

特征

  • 后台接口RESTful 风格,支持前后端分离,可与app公用一套接口
  • 采用RBAC的权限控制,支持数据权限(用法见下)
  • 统一响应结果封装及生成工具
  • 统一异常处理
  • Shiro + Redis 实现 Token 角色权限认证
  • 使用Druid Spring Boot Starter 集成Druid数据库连接池与监控
  • 集成MyBatis-Plus,实现单表业务零SQL
  • 支持多数据源,自由切换,只需方法或类上用 @DS 切换数据源
  • 集成国人风格的knife4j,自动生成接口文档
  • 提供代码生成器(MySQL、Oracle、sqlServer等主流数据库),生成从Html到Mapper,爽歪歪

代码仓库

Gitee地址:https://gitee.com/zwens/springboot-manager
GitHub地址:https://github.com/aitangbao/springboot-manager
如需更简洁版,请移步:https://gitee.com/zwens/springboot-manager/tree/simple/

开发文档&项目演示

开发建议

  • Model内成员变量建议与表字段数量对应,如需扩展成员变量(比如连表查询)建议创建VO,否则需在扩展的成员变量上加@TableField(exist = false)
  • 建议业务失败直接使用throw new BusinessException("ErrorMessage")抛出,由统一异常处理器来封装业务失败的响应结果,会直接被封装为{"code":500002,"message":"ErrorMessage"}返回,尽情抛出;
  • token支持header跟query传参形式,如:
    • ajax中设置header:beforeSend: function(request) {request.setRequestHeader("authorization", "有效的token");}
    • query:?authorization=有效的token

使用说明

  • 使用IDE导入本项目,IDE需要安装lombok插件

  • 下载redis 启动redis

  • 创建数据库, 导入***.sql

  • 配置application-dev.yml中的redis以及数据库连接

  • 运行项目

    1. 直接运行CompanyProjectApplication.java
    2. 项目根目录下执行mvn -X clean package -Dmaven.test.skip=true编译打包,然后执行java -jar manager.jar
  • 接口文档访问 http://localhost:8080/doc.html

  • 登录地址 http://localhost:8080/index/login 用户名密码:admin/123456

  • 代码生成使用

    1. 逻辑删除字段,请统一用deleted字段: 1未删 0已删; 主键请统一格式: id varchar(50) 类型; 列名请勿使用数据库关键字
    2. application.yml中配置: 使用代码生成模块时 指定要生成的表存在于哪种数据库。project.database=mysql
    3. 点击[代码生成]菜单,生成一个或多个表的代码,下载到本地
    4. 解压下载的代码,直接复制main文件夹到本地项目的src目录下
    5. 数据库执行sql,生成菜单
    6. 点击[角色管理]菜单,修改角色所绑定的菜单的权限,刷新页面查看
  • 数据权限配置及使用 示例:文章管理列表

    1. 需要数据权限所控制的表(如sys_content), 需要有创建人字段
    2. 配置角色的数据范围(本部门,其他部门等), 以及绑定的部门
    3. 在列表加个注解@DataScope(用来查询当前等路人的多个角色(并集), 根据角色数据范围, 获取绑定的部门id, 查关联的用户id)
    4. 在查某个模块的list或page的时候,手动queryWrapper.in(createId, 关联的用户id)

技术文档

参与贡献

  1. Fork 本项目
  2. 新建 feature_xxx 分支
  3. 提交代码
  4. 提交 Pull Request

菜单

  • 组织管理
    • 菜单权限管理
    • 角色管理
    • 用户管理
    • 部门管理
  • 系统管理
    • 代码生成
    • 文件管理
    • 文章管理
    • 字典管理
    • 定时任务
    • 日志管理
  • 其他
    • 表单构建
    • SQL监控
    • 接口管理

效果图

输入图片说明 2

输入图片说明 输入图片说明 4 5

7

image-20200430172452726

9

13

16

其他

如果您手头有多余的项目,想找人接私活,那么请一定联系我, 靠谱!

捐赠

项目的发展离不开您的支持, 如果您够宽裕,请作者喝杯咖啡吧! image-20200506154143271

交流群

每周会定期更新,如果二维码过期请先清除浏览器缓存后,重新扫码二维码;如再不行可以私信作者,或邮箱lwb_1128@163.com

加群二维码仅工作日开放, 周末不开放, 如果着急,请使用其他方式联系作者

Comments ( 44 )

Sign in for post a comment

Java
1
https://gitee.com/zwens/springboot-manager.git
git@gitee.com:zwens/springboot-manager.git
zwens
springboot-manager
springboot-manager
master

Search

190622 32b11934 1899542 190632 884178f9 1899542