平刚是谁?带你了解平刚的个人资料和背景故事

天美租号

今天跟大家唠唠我最近在搞的“平刚”项目,名字土是土点,但东西还挺有意思。

话说回来,我一开始接到这个需求的时候,脑子里也是一头雾水,平刚?这是要干后来才知道,是要做一个用户权限管理平台,保证不同用户在系统里只能访问到自己该访问的内容,避免越权操作,保证数据安全。

我得摸清楚这个“平刚”到底要实现哪些功能。 于是我开始疯狂找需求文档,跟产品经理battle,开会讨论,总算是把需求给捋顺。大概包括这些:

平刚是谁?带你了解平刚的个人资料和背景故事

用户管理:增删改查用户,分配角色。

角色管理:定义角色,给角色赋予权限。

权限管理:管理系统里的各种权限点。

资源管理:定义需要保护的资源,比如API接口、页面等等。

授权管理:将角色和资源关联起来,控制角色对资源的访问权限。

需求定,接下来就是选技术方案。 考虑到我们团队的技术栈,以及项目的复杂程度,我选择Spring Boot + Spring Security + MyBatis Plus 这一套组合拳。 这套方案比较成熟,社区也活跃,遇到问题也好解决。

平刚是谁?带你了解平刚的个人资料和背景故事

接下来就是撸代码的环节。

我先把项目的基本框架搭起来,包括Controller、Service、Mapper等等。然后开始实现用户管理模块。

用户管理这块,我主要做这些事情:

实现用户注册、登录功能。

实现用户信息的增删改查功能。

实现用户角色的分配功能。

平刚是谁?带你了解平刚的个人资料和背景故事

用户管理搞定之后,就开始搞角色管理和权限管理。 这两个模块比较类似,都是对数据的增删改查操作。 稍微麻烦一点的是权限的定义,需要考虑清楚系统里到底有哪些权限点,如何划分权限的粒度。

最核心的是授权管理。 授权管理就是要实现角色和资源的关联,判断用户是否有权限访问某个资源。

这里我主要做这些事情:

定义权限注解,用于标记需要进行权限控制的接口。

实现权限拦截器,用于拦截请求,判断用户是否有权限访问该接口。

将角色和资源的信息存入数据库,方便进行权限判断。

平刚是谁?带你了解平刚的个人资料和背景故事

在具体的实现过程中,我遇到不少坑。 比如Spring Security的配置问题,MyBatis Plus的用法问题,数据库的设计问题等等。

遇到问题的时候,我就疯狂Google,看官方文档,或者去Stack Overflow上提问。

有时候,一个问题要花好几个小时才能解决。

经过一段时间的努力,总算是把“平刚”的基本功能给实现。 虽然还有一些细节需要完善,但至少已经可以跑起来。

总结一下这回实践的经验:

需求分析很重要,一定要把需求搞清楚才能开始撸代码。

平刚是谁?带你了解平刚的个人资料和背景故事

技术选型要慎重,选择适合自己团队的技术栈。

撸代码的过程中要多思考,多查资料,遇到问题不要怕。

要坚持,不要轻易放弃。

“平刚”这个项目虽然名字土点,但让我学到很多东西。 以后我会继续努力,把“平刚”做得更

发表评论

快捷回复: 表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
验证码
评论列表 (暂无评论,39人围观)

还没有评论,来说两句吧...