activiti工作流UUID生成策略或获取主键id策略

springboot2.0 + activiti6.0 uuid生成策略

Activiti 主键id生成逻辑

Activiti里负责生成主键的类是IdGenerator,在初始化的时候,在ProcessEngineConfigurationImpl类里会判断该值是否为空,为空,则生成默认的DbIdGenerator,不为空就用已设置的。另外还会将该主键生成器赋值给DbSqlSessionFactory。

在实际生成主键的过程中,生成历史流程实例时会使用ProcessEngineConfigurationImpl里的IdGenerator进行生成。而生成流程ID,任务ID的那部分调用的是DbSqlSessionFactory里的IdGenerator进行生成。

Activiti 主键id生成方案

  1. 重写IdGenerator的getNextId()方法。
  2. 给ProcessEngineConfigurationImpl赋值。

网上的大部分的解决方案是继承AbstractProcessEngineConfigurator方法,然后重写beforeInit()方法,但是我在实际应用中,启动时,ProcessEngineConfigurationImpl都已经初始化完成了,还没有进入到该方法中,并没有达到实际的效果。尝试多种方法依然无效后,于是换了另外一种方式,采用配置类的方式。代码如下:

@Configuration
public class MyProcessEngineConfigurator {

   @Autowired
   private UUIDGenerator uuidGenerator;

   @Bean
   public ProcessEngineConfi
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值