同步操作将从 jdkhome/blzo 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
BLZO是一个基于springboot的企业级快速开发脚手架。包含了一个简单易用(无论是对用户还是开发者)且功能强大的管理后台!十分适合中小型项目快速迭代。
使用 jdk11 环境,gradle 4.10/5.0 或以上版本 推荐使用idea进行开发
主要技术栈:
用到的其他项目:
诚挚感谢以上所有项目!(当然远不只是以上!感谢你们!)
包含 3个模块
业务方面,目前只做了一些基础且通用的功能(或代码示范),比如 请求日志、异常处理、参数校验等。 未来可能会整合一些通用的业务代码进来。
管理后台,实现了完整的权限管理功能:
对于用户:
一个通俗易懂的场景: 我是小组组长,我可以为我的下属分配一些我有的权限,并且可以随时收回
截图:
我的权限:
我的菜单:
试用(请不要修改root用户的密码,如果无法登录请联系我,数据库会定期重置,请不要搞事蟹蟹!):
http://blzo-manage.jdkhome.com
root
1234abc
对于开发者:
一般来说,如果要实现支持用户自定义权限、自定义权限传递(组 或者 角色) 这样灵活的功能,不可避免的要有很多配置:
有的保存在数据库里,有的使用json/xml做成配置文件。
大多数情况,都需要开发者将完成的功能配置成权限,而在项目快速迭代的过程中,配置权限就会显得十分麻烦。
如果删除了某个功能,或者修改了页面/接口的URI,这时候还要去另外去维护权限的配置,总之,我认为这样对开发人员很不友好。
即使你提供了图形界面,把上面这些麻烦事抛给用户依然不能从根本上解决问题。
那么现在介绍使用 BLZO ,如何轻易的完成这件麻烦事。
/**
* author link.ji
* createTime 下午3:17 2018/12/5
* Demo
*/
@Slf4j
@Controller
public class DemoController {
/**
* 代表这个接口 的名称是 "demo接口1" 它需要鉴权 它不能作为菜单 它不属于公共权限
* @return
*/
@Authj(value = "demo接口1", auth = true, menu = false, common = false)
@ResponseBody
@RequestMapping(value = "/api/manage/demo/api_1", method = RequestMethod.POST)
public ApiResponse apiManagerDemoApi1() {
return ApiResponse.success();
}
/**
* 代表这个页面 的名称是 "demo页面1" 它需要鉴权 它可以作为菜单 它不属于公共权限
* @return
*/
@Authj(value = "demo页面1", auth = true, menu = true, common = false)
@RequestMapping("/manage/demo/page_1")
public String groupAuth() {
return "manage/demo";
}
}
仅仅只需要在方法上增加一个 @Authj
注解!
你可以随时修改、删除接口/页面的名称、URI 或者一切你想要变动的东西!
将100%的精力花在业务上,再也不用去关注那些权限配置、菜单配置了!
root用户(超级管理员) 会获得由 @Authj
注解标注的所有页面、接口的权限,并进而将这些权限授予更多管理员!
todo(待编写。。。)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。