(五)Activiti之查看最新版本的流程定义

(五)Activiti之查看最新版本的流程定义

2023年8月1日发(作者:)

(五)Activiti之查看最新版本的流程定义⼀、查看最新版本的流程定义因为每个流程定义都可能会有好⼏个版本,所以有时候我们有这样的需求,查询出最新版本的流程定义的集合1. 第⼀步:我们通过Activiti接⼝来获取根据流程定义Version升序排序的流程定义的集合;2. 第⼆步:定义⼀个有序的Map, Map的key就是我们流程定义的Key,Map的值就是流程定义对象;3. 第三步:我们遍历第⼀步的集合,put(key,value) 假如Key相同,后者会覆盖前者;4. 第四步:我们获取Map的values。即我们需要的最新版本的流程定义的集合;package ctiviti;import ;import tream;import HashMap;import List;import ;import ;import sEngine;import sEngines;import sDefinition;import ils;import ;public class ProcessDefineTest2 { /** * 获取默认流程引擎实例,会⾃动读取⽂件 */ private ProcessEngine processEngine = aultProcessEngine();/** * 查看最新版本的流程定义 */ @Test

public void listLastProcDef() {

List listAll=ositoryService() // 获取service .createProcessDefinitionQuery() // 创建流程定义查询 .orderByProcessDefinitionVersion().asc() // 根据流程定义版本升序 .list(); // 返回⼀个集合

// 定义有序Map,相同的Key,假如添加map的值 后者的值会覆盖前⾯相同的key的值 Map map=new LinkedHashMap(); // 遍历集合,根据key来覆盖前⾯的值,来保证最新的key覆盖前⾯所有⽼的key的值 for(ProcessDefinition pd:listAll){ ((), pd); }

List pdList=new LinkedList(()); for(ProcessDefinition pd:pdList){ n("ID_"+()); n("NAME_"+e()); n("KEY_"+()); n("VERSION_"+sion()); n("========="); } }}结果:

发布者:admin,转转请注明出处:http://www.yc00.com/web/1690875413a452481.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信