{"id":13694637,"url":"https://github.com/perye/dokit","last_synced_at":"2025-05-03T04:30:46.967Z","repository":{"id":37149701,"uuid":"215434833","full_name":"perye/dokit","owner":"perye","description":"基于 Spring Boot2、 Jpa、 Spring Security、JWT、redis、Vue的前后端分离的后台管理系统开发平台， 用户管理、菜单管理、角色管理、字典管理、权限控制的方式为RBAC，操作日志、异常日志、接口限流、项目支持数据权限管理，支持一键生成前后端代码（支持在线预览及打包下载），支持前端菜单动态路由 可一键部署服务器应用，数据库。系统中活跃用户状态监控，监视当前系统CPU、内存、磁盘、堆栈等相关信息,基于Element UI在线表单设计及生成Vue代码。","archived":false,"fork":false,"pushed_at":"2023-12-17T15:38:28.000Z","size":9675,"stargazers_count":515,"open_issues_count":15,"forks_count":138,"subscribers_count":16,"default_branch":"master","last_synced_at":"2024-11-12T21:39:00.667Z","etag":null,"topics":["axios","druid","element-ui","jpa","jwt","log4jdbc","mapstruct","mysql","quartz","rbac","redis","spring-boot","springboot","springcache","springsecurity","swagger2","vue","vue-router","vuex","websocket"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/perye.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2019-10-16T02:03:07.000Z","updated_at":"2024-10-22T10:02:36.000Z","dependencies_parsed_at":"2024-03-03T05:32:55.722Z","dependency_job_id":"d8340aa2-2f44-4884-b1f3-4314148a2117","html_url":"https://github.com/perye/dokit","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/perye%2Fdokit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/perye%2Fdokit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/perye%2Fdokit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/perye%2Fdokit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/perye","download_url":"https://codeload.github.com/perye/dokit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252144364,"owners_count":21701397,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["axios","druid","element-ui","jpa","jwt","log4jdbc","mapstruct","mysql","quartz","rbac","redis","spring-boot","springboot","springcache","springsecurity","swagger2","vue","vue-router","vuex","websocket"],"created_at":"2024-08-02T17:01:36.207Z","updated_at":"2025-05-03T04:30:41.942Z","avatar_url":"https://github.com/perye.png","language":"Java","funding_links":[],"categories":["Java"],"sub_categories":[],"readme":"# dokit\n\nJust do kit!\n\n#### 项目简介\n基于 Spring Boot 2.1.9 、 Jpa、 Spring Security、redis、Vue的前后端分离的后台管理系统， 权限控制的方式为RBAC，项目支持数据字典与数据权限管理，支持一键生成前后端代码（支持在线预览及打包下载），支持前端菜单动态路由\n可一键部署服务器应用，数据库。系统中活跃用户状态监控，监视当前系统CPU、内存、磁盘、堆栈等相关信息，基于Element UI在线表单设计及生成Vue代码。\n\n- 前后端统一异常拦截处理，统一输出异常，避免繁琐的判断\n- 高效率开发，使用代码生成器可以一键生成前后端代码\n- 支持数据字典，可方便的对一些状态进行管理\n- 支持接口限流，避免恶意请求导致服务层压力过大\n- 支持接口级别的功能权限与数据权限，可自定义操作\n- 自定义权限注解与匿名接口注解，可快速对某一接口拦截与放行\n- 对一些常用的前端组件封装：表格数据请求、数据字典等\n- 前端表单，后端代码，支持配置一键生成\n\n项目地址\n\n|github|码云|\n| ------ | ------ | \n|[https://github.com/Perye/dokit](https://github.com/Perye/dokit)|[https://gitee.com/hongguodong/dokit](https://gitee.com/hongguodong/dokit)|\n\n####  系统功能\n- 用户管理：提供用户的相关配置，新增用户后，默认密码为123456\n- 角色管理：对权限与菜单进行分配，可根据部门设置角色的数据权限\n- 菜单管理：菜单动态路由，后端可配置化，支持多级菜单\n- 部门管理：可配置系统组织架构，树形表格展示\n- 岗位管理：配置各个部门的职位\n- 字典管理：可维护常用一些固定的数据，如：状态，性别等\n- 操作日志：记录用户操作的日志\n- 异常日志：记录异常日志，方便开发人员定位错误，异常信息前台高亮显示\n- 系统缓存：使用jedis将缓存操作可视化，并提供对redis的基本操作，可根据需求自行扩展\n- SQL监控：采用druid 监控数据库访问性能，默认用户名admin，密码123456\n- 定时任务：整合Quartz做定时任务，加入任务日志，任务运行情况一目了然\n- 代码生成：高灵活度一键生成前后端代码，减少百分之80左右的工作任务，可以预览生成结果\n- 邮件工具：配合富文本，发送html格式的邮件\n- 系统接口：根据业务代码自动生成相关的api接口文档。\n- 服务监控：监视当前系统CPU、内存、磁盘、堆栈等相关信息。\n- 图床管理：使用sm.ms图床，用作公共图片上传使用\n- 七牛云存储：可同步七牛云存储的数据到系统，无需登录七牛云直接操作云数据\n- 在线用户：当前系统中活跃用户状态监控，查看实时在线用户，可以管理在线用户，踢下线等操作\n- 服务器： 可以连接云服务器进行管理\n- 数据库管理： 连接数据方便更新数据库脚本\n- 应用管理：上传jar包到服务器进行管理\n- 部署管理：可一键部署，根据配置的服务器和应用程序，线上直接配置，无需命令行\n- 表单构建：基于Element UI在线表单设计及生成Vue代码\n\n\n\n##### 后端技术\n\n| 技术                 | 说明                | \n| -------------------- | ------------------- |\n| SpringBoot           | 容器+MVC框架        | \n| SpringSecurity       | 认证和授权框架      | \n| Spring-data-jpa      | ORM框架             | \n| Spring Cache         | Spring缓存\n| Swagger-UI           | 文档生产工具        | \n| log4jdbc             | 监控sql日志            |\n| Redis                | 分布式缓存          | \n| Druid                | 数据库连接池        | \n| OSS                  | 对象存储            | \n| JWT                  | JWT登录支持         | \n| Lombok               | 简化对象封装工具    | \n| quartz               | 作业调度框架          |\n| freemarker           | 模版引擎             |\n| sigar                | 系统信息              |\n| websocket            | TCP通信          |\n| ssh2                 | 服务器连接          |\n| jsch                 | SFTP文件传输       |\n| mapstruct            | 属性映射工具         |\n| mysql| 关系型数据库|\n\n##### 前端技术\n\n| 技术       | 说明                  | \n| ---------- | --------------------- \n| Vue        | 前端框架              | \n| Vue-router | 路由框架              | \n| Vuex       | 全局状态管理框架      | \n| Element    | 前端UI框架            | \n| Axios      | 前端HTTP框架          | \n| echarts   | 基于Echarts的图表框架 | \n| Js-cookie  | cookie管理工具        | \n| nprogress  | 进度条控件            | \n| vue-count-to|数字滚动 |\n| vue-highlightjs|代码语法高亮|\n| qs            | 对象序列化        |\n| vue-cropper | 图片剪切|\n| vue-splitpane | 前端页面分割|\n| path-to-regexp| url正则表达 |\n| wangeditor|富文本编辑器 |\n| mavon-editor|markdown编辑器|\n| jszip|    压缩解压|\n| jsencrypt | 参数前端加密|\n| fusejs|基于 JavaScript 的轻量级模糊搜索引擎 |\n| file-saver|客户端保存文件|\n| codemirror|在线编辑代码|\n| clipboard| 点击复制|\n| vue-treeselect| 树形选择器|\n| vue-jsx|JSX语法|\n| screenfullJS| 全屏|\n| xlsx| 生成报表 |\n| sass| CSS扩展语言|\n| svgo| svg压缩|\n\n\n#### 项目结构\n```\n后端\n.\n├── main\n│   ├── java\n│   │   └── com\n│   │       └── perye\n│   │           └── dokit\n│   │               ├── DokitApplication.java       应用启动类\n│   │               ├── annotation                  系统自定义注解\n│   │               ├── aop                     \n│   │               ├── aspect                      自定义注解的切面\n│   │               ├── base                        提供了Entity、DTO基类和mapstruct的通用mapper\n│   │               ├── config                      自定义权限实现、redis配置、swagger配置\n│   │               ├── controller\n│   │               ├── dto\n│   │               ├── entity\n│   │               ├── exception                   统一异常的处理\n│   │               ├── mapper\n│   │               ├── redis\n│   │               ├── repository\n│   │               ├── security\n│   │               ├── service\n│   │               ├── swagger2\n│   │               ├── task\n│   │               ├── utils                       系统通用工具类\n│   │               ├── vo\n│   │               └── websocket\n│   └── resources\n│       ├── banner.txt\n│       ├── config\n│       │   ├── application-dev.yml\n│       │   ├── application-prod.yml\n│       │   └── application.yml\n│       ├── generator.properties\n│       ├── log4jdbc.log4j2.properties\n│       ├── logback.xml\n│       ├── sigar-lib               sigar所需文件\n│       ├── sql\n│       │   └── dokit.sql           sql文件\n│       └── template\n│           ├── email\n│           │   └── email.ftl       发送邮件模版\n│           └── generator           自动生成代码模版    \n│               ├── admin       \n│               │   ├── Controller.ftl\n│               │   ├── Dto.ftl\n│               │   ├── Entity.ftl\n│               │   ├── Mapper.ftl\n│               │   ├── QueryCriteria.ftl\n│               │   ├── Repository.ftl\n│               │   ├── Service.ftl\n│               │   └── ServiceImpl.ftl\n│               └── front\n│                   ├── api.ftl\n│                   └── index.ftl\n└──\n```\n\n```\n前端\n.\n├── LICENSE\n├── README.md\n├── babel.config.js\n├── jest.config.js\n├── package.json\n├── plopfile.js\n├── postcss.config.js\n├── public\n│   ├── favicon.ico\n│   └── index.html\n├── src\n│   ├── App.vue\n│   ├── api\n│   ├── assets\n│   ├── components\n│   │   ├── Breadcrumb\n│   │   ├── Crud\n│   │   ├── Dict\n│   │   ├── Echarts\n│   │   ├── Hamburger\n│   │   ├── HeaderSearch\n│   │   ├── IconSelect\n│   │   ├── Iframe\n│   │   ├── JavaEdit\n│   │   ├── Pagination\n│   │   ├── PanThumb\n│   │   ├── Permission\n│   │   ├── RightPanel\n│   │   ├── Screenfull\n│   │   ├── SizeSelect\n│   │   ├── SvgIcon\n│   │   ├── ThemePicker\n│   │   └── YamlEdit\n│   ├── layout\n│   ├── main.js\n│   ├── mixins\n│   ├── router\n│   ├── settings.js\n│   ├── store\n│   ├── utils\n│   └── views\n│       ├── components\n│       ├── dashboard\n│       ├── features\n│       ├── generator\n│       ├── home.vue\n│       ├── login.vue\n│       ├── mnt\n│       ├── monitor\n│       ├── system\n│       └── tools\n├── static\n├── tree.txt\n├── vue.config.js\n└── yarn.lock\n\n```\n\n#### 系统预览\n\n首页\n![首页](https://i.loli.net/2020/01/07/qRDfPelSUsgd4cX.jpg)\n\n用户管理\n![用户管理](https://i.loli.net/2020/01/07/UzS2Jko48P1xpYi.png)\n\n角色管理\n![角色管理](https://i.loli.net/2020/01/07/BWfhctILKGx3FOw.png)\n\n菜单管理\n![菜单管理](https://i.loli.net/2020/01/07/6qhBA2edJxRzrWT.png)\n\n代码生成\n![代码生成](https://i.loli.net/2020/01/07/1rouCmxwXRjaSF9.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fperye%2Fdokit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fperye%2Fdokit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fperye%2Fdokit/lists"}