• 15-流程操作(查询和删除部署信息和流程定义信息)


    效果如下:

    查询部署表

    部署对象Deployment也是接口,它的四个方法刚好对应着部署表act_re_deployment的四个字段

    查询流程定义列表

    假如这个流程图画错了,我不想使用这个流程了,把它删除掉,那就删除部署信息

    删除部署信息

    流程部署表act_re_deployment里面ID_为1的记录被删除了,并且流程定义表act_re_procdef里面外键DEPLOYMENT_ID_为1的记录也被删除了,因为有外键约束嘛,不可能只删除流程部署表的信息

    现在看是没有问题,我来制造一个问题,比如选择流程部署的ID=1901的记录,那么流程定义表里面对应的记录的流程定义ID=qjlc:14:1904,按照这个流程定义的ID启动一个流程实例,启动完之后试着删除这个ID=1901的流程部署看看行不行。启动了一个ID_=2201的流程实例,删除结果报错了

    因为有外键约束所以不能删除部署表的信息,你删除这个紧接着也会删除关联它的其他表的信息。虽然传的参数只有部署的ID,但是删除的表可不只部署表这一张表。关联着的有我们的流程定义表,还有可能有我们的执行表和任务表。后面这两张表就属于关联的表,级联的表。

    我们学过hibernate的级联删除cascade,activiti也有级联删除cascade。

    true代表是级联,false就代表不是级联,不级联有可能删除不成功

    删除流程定义的代码其实和删除部署信息的代码是一样的,只是目标不一样。这两张表有一个外键的关联,因为删除子表里面的一条数据,其实是通过删除主表里面的一条数据来实现的。关联的,把子表里面的数据给它删除掉。所以虽然框架并没有提供直接删除流程定义的方法,但是代码其实和删除部署信息是一样的。

  • 相关阅读:
    Redis-cluster集群
    MySQL-binlog日志格式
    MySQL-备份与恢复
    PG-内存参数配置标准
    [POJ1724]Roads
    [POJ1062][最短路]昂贵的聘礼
    我的小博客美化记(仍在持续修改和增加,敬请持续关注)
    [离散化模板][并查集][洛谷1955]程序自动化分析
    python调用百度接口解析/逆解析地址
    datax安装部署
  • 原文地址:https://www.cnblogs.com/ZHONGZHENHUA/p/6407272.html
Copyright © 2020-2023  润新知