# 实现基本增删改查

在上一章,我们建立一个基础的 SpringBoot 项目并且引入了依赖。本章开始,我们将逐步实现基础增删改查功能和 RBAC 权限体系。

# 实现系统管理模块

系统管理模块,包括:用户、角色、权限的管理,结构如下:

本例中,模块的基本结构如图所示,其中:

  • entity: JPA 实体类,与数据库表一一对应。
  • dto:用到持久层与前端之间的数据交互。
  • vo: 用作前端与后台之间的参数交互。
  • mapper :mapStruct 的实体转换接口定义。

篇幅有限,此处就不详细说明增删改查的具体实现了。 具体实现,请参考:源码

# 实现猫咪管理

本例中,我们将以猫咪管理作为授权资源实现 Restful 风格资源的权限管理,所以,猫咪管理只实现了控制器。

权限资源端点如下:

name Method Uri
新增 POST /pet/cats
删除 DELETE /pet/cats/*
修改 PUT /pet/cats
查看详情 GET /pet/cats/*
列表查询 GET /pet/cats

具体实现,请参考:源码

# 初始化数据

为了后续权限管理功能引入,需要首先对系统资源用户角色等数据进行初始化。

参考序言中的场景约定说明,我们需要初始化的数据如下:

  • 添加系统资源:
name Method Uri
新增 POST /pet/cats
删除 DELETE /pet/cats/*
修改 PUT /pet/cats
查看详情 GET /pet/cats/*
列表查询 GET /pet/cats

可通过 API DOC 界面直接添加。访问:http://localhost:1000/doc.html,如下所示:

  • 添加角色 分别添加角色:ADMIN 、USER

    • ADMIN 权限: 具备所有资源权限。
    • USER 权限: 查看详情、列表查询
  • 添加用户 分别添加用户: Tom 、Lucy

    • Tom 具备角色: ADMIN,USER
    • Lucy 具备角色: USER
上次更新:: 1/25/2021, 4:26:40 PM