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。

目录
相关文章
|
6月前
|
API
09activiti - 核心API
09activiti - 核心API
24 0
09activiti - 核心API
|
消息中间件 移动开发 物联网
3_4_AliOS Things 基础 AOS API 及 HAL API 介绍|学习笔记
快速学习3_4_AliOS Things 基础 AOS API 及 HAL API 介绍。
336 0
3_4_AliOS Things 基础 AOS API 及 HAL API 介绍|学习笔记
|
负载均衡 Cloud Native 算法
【云原生&微服务二】SpringCloud之Ribbon自定义负载均衡策略(含Ribbon核心API)
【云原生&微服务二】SpringCloud之Ribbon自定义负载均衡策略(含Ribbon核心API)
203 0
【云原生&微服务二】SpringCloud之Ribbon自定义负载均衡策略(含Ribbon核心API)
|
大数据 API
大数据基础之常用API三
大数据基础之常用API三
125 0
|
大数据 API Java
大数据基础之java常用API二(数组元素排序,冒泡排序、Arrays类,包装类,Date类)
大数据基础之java常用API二(数组元素排序,冒泡排序、Arrays类,包装类,Date类)
156 0
大数据基础之java常用API二(数组元素排序,冒泡排序、Arrays类,包装类,Date类)
|
大数据 API Java
大数据基础之java常用API一(Object类、String类、StringBuilder类)
大数据基础之java常用API一(Object类、String类、StringBuilder类)
161 0
大数据基础之java常用API一(Object类、String类、StringBuilder类)
|
Java 大数据 API
大数据之java基础之Api简介
大数据之java基础之Api简介
112 0
|
消息中间件 Java 测试技术
【测试基础】九、如何做 API 测试?异步的呢?
【测试基础】九、如何做 API 测试?异步的呢?
【测试基础】九、如何做 API 测试?异步的呢?
|
Java 大数据 API
|
Java API
Java基础 | 常用API
Java中的常用API讲解
207 0
Java基础 | 常用API