activiti 监听器事件处理事件参数

1背景

通常我们在流程节点或者流程线上会触发对应的事件,但是我们这些事件有一部分是和流程强制耦合在一起,比如A流程 需要到结束节点 触发一个事件。去根据一些固定的参数处理,B流程也是一样,但就是参数不一样,之前的做法是写一个个事件去处理,但实际上这些内部逻辑都是一样的,就是参数不一样,导致了代码重复。昨天发现可以根据流程事件的参数来动态处理,也就是说A流程的事件 和 B流程的事件也是一样的,就是参数不一样,笔者用的版本是activiti 5.22.0,高版本也应该是适用的。可能内部实现有不同罢了。

2 解决方案

该事件统一绑定一个字段名,然后根据获取字段的值来做处理,而字段值就是上面说的监听器的参数

监听器的代码和流程图上的字段名进行绑定,获取对应的值来做处理

3 实现原理

1 实际上流程的监听器这边是通过反射去实例化一个对象,在反射实例化对象的过程后把流程图节点上解析出来的FieldDeclaration 的集合也通过反射赋值到我们声明的字段上去。

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值