三分钟明白Activiti工作流------java运用

此文为偶然间看到的文章,便收集起来,防止以后用到,中间也加入少许自己组织的语言,只是方便更多的读者可以看懂吧。

 

一.什么是工作流

以请假为例,现在大多数公司的请假流程是这样的。

员工打电话(或网聊)向上级提出请假申请------>上级口头同意------>上级将请假记录下来------>月底将请假记录上交公司------>公司将请假录入电脑。。。。。是不是很low?

采用工作流技术的公司的请假流程是这样的(我感觉类似钉钉)

员工使用账户登录系统------>点击请假------>上级登录系统点击允许

就这样,一个请假流程就结束了

等上级点击允许后,这些记录将自动录入电脑。

这,就是工作流技术。

 

 

Georgakopoulos给出的工作流定义是:工作流是将一组任务组织起来以完成某个经营过程:定义了任务的触发顺序和触发条件,每个任务可以由一个或多个系统完成,也可以由一个或一组人完成,还可以由一个或多个人与软件系统协作完成。

 

二:工作流技术的特点

从上面的例子,很容易看出

工作流系统,实现了工作流程的自动化,提高了企业运营效率,改善企业资源利用、提高企业运作的灵活性和适应性、提高量化考核业务处理的效率、浪费时间(时间就是金钱)

而手工处理工作流程,一方面无法对整个流程状况进行有效跟踪、了解,另一方面难免会出现人为的失误和时间上的延时导致效率低下,特别是无法进行量化统计,不利于查询,报表以及绩效评估。

三:JAVA开发者为什么要学Activiti工作流

在Java领域,JBPM和Activiti是两个主流的工作流系统,而Activiti的出现无疑将会取代JBPM(因为Activiti的开发者就是从Jbpm开发者出来的)-----------------------------------这应该就是青出于蓝而胜于蓝吧。。。

 

四:Activiti工作流学习要点

1. 1个插件

在Eclipse中安装Activiti 插件,让你可以在Eclipse中绘制Activiti 工作流图

 

2. 1个引擎

ProcessEngine对象,Activiti 工作流引擎。这是Activiti工作的核心。负责生成流程运行时的各种实例及数据、监控和管理流程的运行。

所有的操作都是从获取引擎开始的,所以一般会把引擎作为全局变量

ProcessEngine processEngine =ProcessEngines.getDefaultProcessEngine();

 

3. 1个配置文件

activiti.cfg.xml。Activiti核心配置文件,配置流程引擎创建工具的基本参数和数据库连接池参数

 

4. 5种数据库表

Activiti的后台是有数据库的支持,所有的表都以ACT_开头。 第二部分是表示表的用途的两个字母标识。用途也和服务的API对应。

ACT_RE_*: 'RE'表示repository。 这个前缀的表包含了流程定义和流程静态资源(图片,规则,等等)。

ACT_RU_*: 'RU'表示runtime。 这些运行时的表,包含流程实例,任务,变量,异步任务,等运行中的数据。 Activiti只在流程实例执行过程中保存这些数据,在流程结束时就会删除这些记录。 这样运行时表可以一直很小速度很快。

ACT_ID_*: 'ID'表示identity。 这些表包含身份信息,比如用户,组等等。

ACT_HI_*: 'HI'表示history。 这些表包含历史数据,比如历史流程实例,变量,任务等等。

ACT_GE_*: 通用数据,用于不同场景下,如存放资源文件。

 

5. 23张表

不同的表存放不同方面的数据,有流程定义表、任务结点表、流程变量表、任务历史表等等。

 

6. 5项Service

不同的Service类对应不同的功能。

比如TaskService,是activiti的任务服务类。可以从这个类中获取任务的信息。

而HistoryService,则是activiti的查询历史信息的类。在一个流程执行完成后,这个对象为我们提供查询历史信息。

 

7. 7项基本操作

设计流程图(各种组件,如连线、用户任务、网关)

流程定义增删改查

流程变量增删改查

启动流程定义

任务增删改查

完成任务

历史信息查询

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值