Activiti 6.x【3】继续核心API基础

简介: 版权声明:转载注明出处就OK的说,有些东西会转载,都会注明的说= =如果有冒犯麻烦见谅 https://blog.csdn.net/Pan1458689676/article/details/82584795 ...
版权声明:转载注明出处就OK的说,有些东西会转载,都会注明的说= =如果有冒犯麻烦见谅 https://blog.csdn.net/Pan1458689676/article/details/82584795

基本流程讲解与开发前奏


核心API介绍

这里写图片描述
springboot环境下不再以activiti.cfg.xml文件的形式配置,可在yml内配置,yml配置会在后文讲解。

RepositoryService:对流程定义进行管理。
RuntimeService:对流程实例的管理。
TaskService:对流程任务进行管理。
IdentityService:管理用户和用户组。
ManagementService:提供对activiti数据库的直接访问【一般不用】。
HistoryService:对流程的历史数据进行操作。
FormService:动态表单。

IdentityService

用户管理

先讲IdentityService,后续联合TaskService、RuntimeService实现并行网关demo。
新建用户【无法创建两个ID一样的用户】

/**新建用户*/
@Test
public void testUser(){
    User user = identityService.newUser("ptm");
    user.setFirstName("潘");
    user.setLastName("天淼");
    user.setEmail("1458689676@qq.com");
    user.setPassword("123456");

    //新建用户
    identityService.saveUser(user);
}

这里写图片描述
一般用户信息图片啥的就别存在activiti里面了,自带的表应该是满足不了真实业务需求的。呐QAQ你看下面这表。建议的话是在identityService的基础上,以userid与新建的表关联起来。RBAC了解一下。
这里写图片描述
获取用户信息【更新用户信息请先获取用户信息对获取的user,set属性调用saveUser方法即可】

/**获取用户信息*/
@Test
public void searchUser(){
    String userid ="ptm";
    User user = identityService.createUserQuery()
            .userId(userid).singleResult();
    System.out.println("博主的名字:"+user.getFirstName()+user.getLastName());
    System.out.println("博主的邮箱:"+user.getEmail());
    System.out.println("呐-ID肯定是相等的:"+userid.equals(user.getId()));
    System.out.println("测试密码:"+user.getPassword());
    System.out.println("是否验证成功:"+identityService.checkPassword("ptm","123456"));
}

这里写图片描述

删除用户信息

/**删除用户信息*/
@Test
public void delUser(){
    identityService.deleteUser("ptm");
}

如果需要用activiti的用户表,接口有如下方法
这里写图片描述

组管理

/**用户组管理*/
@Test
public void testGroup(){
   String groupId ="HRPTM";
   //创建用户组对象
   Group group = identityService.newGroup(groupId);
   group.setName("HR");
   group.setType("assignment");
   //保存用户组
   identityService.saveGroup(group);
   Group groupInfo = identityService.createGroupQuery()
           .groupId(groupId)
           .singleResult();
   System.out.println("组的名字:"+groupInfo.getName());
   System.out.println("组类别"+groupInfo.getType());
   System.out.println("GroupId:"+groupInfo.getId());
//        //删除用户组
//        identityService.deleteGroup("HRPTM");
}

组的管理与用户管理类似,就直接一回杀了。执行结果如下:
这里写图片描述
这里写图片描述

Membership管理(用户对应组关系)

/**Membership管理*/
@Test
public void testMembership(){
    //建立关联
    identityService.createMembership("ptm","HRPTM");
    //查询属于HRPTM用户组的用户
    User user = identityService.createUserQuery()
            .memberOfGroup("HRPTM")
            .singleResult();
    System.out.println("博主的名字:"+user.getFirstName()+user.getLastName());
    System.out.println("博主的邮箱:"+user.getEmail());
    System.out.println("userid"+user.getId());
    System.out.println("测试密码:"+user.getPassword());
    System.out.println("是否验证成功:"+identityService.checkPassword("ptm","123456"));

    //查询用户所属组
    Group group = identityService.createGroupQuery()
            .groupMember("ptm")
            .singleResult();
    System.out.println("组的名字:"+group.getName());
    System.out.println("组类别"+group.getType());
    System.out.println("GroupId:"+group.getId());
}

这里写图片描述
这里写图片描述
另外测试的key用的都是普通的英文,如是正式项目建议UUID。

目录
相关文章
|
API
09activiti - 核心API
09activiti - 核心API
45 0
09activiti - 核心API
|
消息中间件 移动开发 物联网
3_4_AliOS Things 基础 AOS API 及 HAL API 介绍|学习笔记
快速学习3_4_AliOS Things 基础 AOS API 及 HAL API 介绍。
474 0
3_4_AliOS Things 基础 AOS API 及 HAL API 介绍|学习笔记
|
存储 缓存 安全
Spring Security系列教程11--Spring Security核心API讲解
前言 经过前面几个章节的学习,一一哥 带大家实现了基于内存和数据库模型的认证与授权,尤其是基于自定义的数据库模型更是可以帮助我们进行灵活开发。但是前面章节的内容,属于让我们达到了 "会用" 的层级,但是 "为什么这么用",很多小伙伴就会一脸懵逼了。对于技术学习来说,我们追求的不仅要 "知其然",更要 "知其所以然"! 本篇文章中,壹哥 就跟各位小伙伴一起来了解剖析Spring Security源码内部,实现认证授权的具体过程及底层原理。接下来请各位做好心理准备,以下的学习过程可能会让你心理 “稍有不适” 哦,因为每次看源码都懵懵的...... 一. Spring Security认证请求完整
390 0
|
负载均衡 Cloud Native 算法
【云原生&微服务二】SpringCloud之Ribbon自定义负载均衡策略(含Ribbon核心API)
【云原生&微服务二】SpringCloud之Ribbon自定义负载均衡策略(含Ribbon核心API)
284 0
【云原生&微服务二】SpringCloud之Ribbon自定义负载均衡策略(含Ribbon核心API)
|
大数据 API Java
大数据基础之java常用API一(Object类、String类、StringBuilder类)
大数据基础之java常用API一(Object类、String类、StringBuilder类)
195 0
大数据基础之java常用API一(Object类、String类、StringBuilder类)
|
消息中间件 Java 测试技术
【测试基础】九、如何做 API 测试?异步的呢?
【测试基础】九、如何做 API 测试?异步的呢?
【测试基础】九、如何做 API 测试?异步的呢?
|
Java API
Java基础 | 常用API
Java中的常用API讲解
244 0
Java基础 | 常用API
|
存储 Java API
Java基础(八)| 常用API与StringBuilder详解
⭐本专栏旨在对JAVA的基础语法及知识点进行全面且详细的讲解,完成从0到1的java学习,面向零基础及入门的学习者,通过专栏的学习可以熟练掌握JAVA编程,同时为后续的框架学习,进阶开发的代码能力打下坚实的基础。
89 0
Java基础(八)| 常用API与StringBuilder详解
|
存储 Java API
【JAVA基础】String类常用API
1.String类常用API-遍历、替换、截取、分割操作 2.综合案例 2.模拟用户登录功能 3.手机号码屏蔽
【JAVA基础】String类常用API
|
JavaScript 前端开发 API
前端-vue基础79-promise中的常见api
前端-vue基础79-promise中的常见api
168 0
前端-vue基础79-promise中的常见api
下一篇
无影云桌面