• Spring Boot + Spring Cloud 实现权限管理系统 后端篇(十):接口服务整理


    通用操作

    通用操作是指一般的增删改查操作,逻辑大体都是一致的,所以统一抽象到CURD接口,需要用到CURD的表直接实现接口就可以了。

    通用操作主要有以下几个:

    保存操作

        /**
         * 保存操作
         * @param record
         * @return
         */
        int save(T record);

    更新操作

        /**
         * 更新操作
         * @param record
         * @return
         */
        int update(T record);

    删除操作

        /**
         * 删除操作
         * @param record
         * @return
         */
        int delete(T record);

    批量删除

        /**
         * 批量删除操作
         * @param entities
         */
        int delete(List<T> records);

    分页查询

        /**
         * 分页查询
         * 这里统一封装了分页请求和结果,避免直接引入具体框架的分页对象, 如MyBatis或JPA的分页对象
         * 从而避免因为替换ORM框架而导致服务层、控制层的分页接口也需要变动的情况,替换ORM框架也不会
         * 影响服务层以上的分页接口,起到了解耦的作用
         * @param pageRequest 自定义,统一分页查询请求
         * @return PageResult 自定义,统一分页查询结果
         */
        PageResult findPage(PageRequest pageRequest);

    根据ID查询

        /**
         * 根据ID查询
         * @param id
         * @return
         */
        T findById(Long id);

    登录管理

    登录接口

    名称:login

    类型:post

    路径:/sys/login

    返回:HttpResult

    参数:{LoginBean loginBean}

    描述:登录接口,验证登录逻辑,生成令牌

    验证码生成接口

    名称:captcha

    类型:get

    路径:captcha.jpg

    返回:void

    参数:{HttpServletResponse response}

    描述:生成并输出验证码图片到前台

    令牌服务

    创建令牌

    名称:createToken

    返回:SysUserToken

    参数:{long userId}

    描述:生成令牌字符,根据字符判断是否已经存在令牌

       存在:更新过期时间,不存在:保存到数据库或缓存

    根据用户ID查询

    名称:findByUserId

    返回:SysUserToken

    参数:{long userId}

    描述:根据用户ID查询令牌

    根据令牌字符查询

    名称:findByToken

    返回:SysUserToken

    参数:{String token}

    描述:根据令牌字符查询令牌对象

    用户管理

    根据名称查询

    名称:findByUserName

    类型:get

    路径:/user/findByUserName

    返回:HttpResult

    参数:{String userName}

    描述:根据名称查询分页列表

    修改用户密码

    名称:updatePassword

    类型:get

    路径:/user/updatePassword

    返回:HttpResult

    参数:{String password, String newPassword}

    描述:修改用户密码

    机构管理

    查询机构树

    名称:findTree

    类型:get

    路径:/dept/findTree

    返回:HttpResult

    参数:{}

    描述:查找机构树形列表,提供增删改查界面和用户选择所属机构

    角色管理

    根据角色名称查询

    名称:findByRoleName

    类型:get

    路径:/user/findByRoleName

    返回:HttpResult

    参数:{String roleName}

    描述:根据名称查询分页列表

    查询全部

    名称:findAll

    类型:get

    路径:/menu/findAll

    返回:HttpResult

    参数:{}

    描述:查找全部,提供用户选择拥有角色

    菜单管理

    根据用户名查询菜单树

    名称:findTree

    类型:get

    路径:/menu/findTree

    返回:HttpResult

    参数:{String userName}

    描述:根据用户名查询用户拥有的菜单,用户名为空则返回全部

          提供导航菜单、新增改查页面、角色授权菜单页面使用

    源码下载

    后端:https://gitee.com/liuge1988/kitty

    前端:https://gitee.com/liuge1988/kitty-ui.git


    作者:朝雨忆轻尘
    出处:https://www.cnblogs.com/xifengxiaoma/ 
    版权所有,欢迎转载,转载请注明原文作者及出处。

  • 相关阅读:
    JAVA语言 第五周
    JAVA语言 第四周
    Good Bye 2016 D. New Year and Fireworks BFS
    Codeforces Round #402 (Div. 2) D. String Game 二分
    Codeforces Round #401 (Div. 2) E. Hanoi Factory 栈
    Good Bye 2016 C. New Year and Rating 模拟
    Codeforces Round #147 (Div. 2) C. Primes on Interval 二分
    Codeforces Round #398 (Div. 2) B. The Queue 思维
    Divide by Zero 2017 and Codeforces Round #399 (Div. 1 + Div. 2, combined) D. Jon and Orbs 概率DP
    Divide by Zero 2017 and Codeforces Round #399 (Div. 1 + Div. 2, combined) E. Game of Stones Nim游戏
  • 原文地址:https://www.cnblogs.com/xifengxiaoma/p/9563948.html
Copyright © 2020-2023  润新知