admin3 后台管理系统,一个灵活高效不臃肿的后台管理框架,项目后端基于 Java17 、SpringBoot3.0 ,前端基于 TypeScript 、Vite3 、Vue3 、Element Plus ,只提供登录会话、用户管理、角色管理、权限资源管理、事件日志等基础功能的最佳实践方案,不做过多的封装,适合二次定制开发、接私活、源码学习等场景。
未使用任何安全框架,优雅地实现了会话管理+权限控制功能,支持请求 URL 权限拦截,菜单、按钮级别权限控制
会话通过数据库作为二级缓存,即使重启也不会丢失登录状态
支持 AOT 编译 Native 镜像,相较于传统 JVM 形式节省了至少 50%的内存
前端资源支持独立部署+webjars 嵌入到后端应用两种形式
持久层使用 SpringData JPA 进行开发,能够支持多种数据库适配
![]() | 1 chunworkhard 2023-01-16 15:27:32 +08:00 挺不错的 |
![]() | 2 cjbi OP @chunworkhard 谢谢你 |
3 ciscool001118 2023-01-16 15:49:09 +08:00 这个支持数据权限吗? |
![]() | 4 Poluk 2023-01-16 15:53:52 +08:00 感谢感谢,最近刚学完 boot 相关的..先 star ,等等看看,刚学完 boot 的初学者还不知道怎么从源码入手学习呢..(苦恼) |
5 yazinnnn 2023-01-16 16:14:08 +08:00 ![]() 4 天 800star? 刷的吗? |
![]() | 6 cjbi OP @yazinnnn 切换分支看看,只是 main 分支提交比较少,实际都维护 4 年了。再说也没必要刷,没有利益相关,纯粹个人爱好 |
![]() | 7 cjbi OP @ciscool001118 不支持数据权限 |
![]() | 8 xuanbg 2023-01-16 16:23:26 +08:00 @ciscool001118 你想多了,任何框架都不可能支持数据权限。因为数据权限是无法从业务中抽象出来且与业务无关。所以,任何号称支持数据权限的框架,里面都不知道有多少坑在等着你,还是直接丢弃比较好。 |
![]() | 10 cjbi OP 每次 springboot 和前端有什么大的技术变动,我都是重新拉分支造的轮子,本身就简单,三四天的时间就能完成 |
![]() | 11 cjbi OP 权限参考了 shiro 的权限字符串的设计,套用一下 rbac 模型+拦截器拦截过滤 URL 。其实大部分权限系统都没必要引入 Spring Security/Shiro ,实际业务根本用不到那些强大的功能 |
![]() | 12 gowk 2023-01-16 16:33:58 +08:00 如果角色能支持数据过滤( data scope) 就好了 也就是可以设置某个角色 1 只能查看本人数据 2 查看本部门数据 3 查看本部门及下属部门数据 4 自定义部门数据 |
![]() | 14 xuanbg 2023-01-16 16:42:21 +08:00 @gowk 数据权限难在授权。你这种无授权(借组织机构)确实是可以很简单在业务层实现的,但并不是所有查询都需要进行数据过滤,所以就无法在框架层面来实现这个功能。 |
![]() | 15 whyrookie 2023-01-16 16:57:25 +08:00 期待一个 React+Springboot 的开源项目 |
16 ngduncent 2023-01-16 17:27:32 +08:00 |
![]() | 17 leegradyllljjjj 2023-01-16 17:41:19 +08:00 可以拿去期末答辩了,估计能给 90 分 |
18 zxdlovejava 2023-01-16 19:18:25 +08:00 via iPhone Mark 前端在学习 spring boot, 值得学习 |
19 zxdlovejava 2023-01-16 19:19:38 +08:00 via iPhone @whyrookie 可以自己翻译一下,用 and pro 那一套应该很快 |
![]() | 20 cjbi OP 一开始我也犹豫了半天,前端到底是用 vue3 还是 react ,想到国内还是 vue 为主,就用了 vue ,没准哪一天闲的没事就写个 react 版本也有可能 |
![]() | 21 cjbi OP @zxdlovejava antd pro 感觉很难用,又重,用过一次,再也不会用了 |
22 cjbi OP @zxdlovejava 我不整花里胡哨的东西,代码都是干活,拿来学习准没错 |
24 guiyun 2023-01-17 09:07:44 +08:00 各位大佬,我这边有个想法,是不是可以将前端的表结构这类的,前端使用 avue 实现,后端具体的结构这类的保存到数据库中,这样实现怎么样 |
![]() | 25 feelinglucky 2023-01-17 15:12:01 +08:00 java 这边的测试用例完全没有 |
![]() | 26 cjbi OP @feelinglucky 会补上的 |
27 Pony69 2023-01-17 17:20:02 +08:00 感觉不错 |
![]() | 28 cjbi OP 我已经把所有的接口都做了端到端的测试用例覆盖,有代码变动都会全量跑一遍测试用例,写测试用例早就再计划中了,今天刚好有时间空闲 |
29 Focus9 2023-02-02 09:31:17 +08:00 文档里权限管理点开是 404 |
30 Hccake 2023-02-11 17:55:06 +08:00 |
31 Hccake 2023-02-11 17:56:47 +08:00 @ciscool001118 试试这个插件 http://www.ballcat.cn/guide/feature/data-scope.html ,基于 mybatis 拦截器实现的数据权限 sql 注入。用户只要根据自己的业务,定制对应的规则即可 |
![]() | 33 KedaArray 2023-02-14 16:43:33 +08:00 点了点了 |