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

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。

一、 什么是工作流

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

员工打电话(或网聊)向上级提出请假申请——上级口头同意——上级将请假记录下来——月底将请假记录上交公司——公司将请假录入电脑

采用工作流技术的公司的请假流程是这样的

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

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

有人会问,那上级不用向公司提交请假记录?公司不用将记录录入电脑?答案是,用的。但是这一切的工作都会在上级点击允许后自动运行!

这就是工作流技术。

 

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项基本操作

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

流程定义增删改查

流程变量增删改查

启动流程定义

任务增删改查

完成任务

历史信息查询

 

 

 

 

转自:http://www.it165.net/pro/html/201504/37443.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/451294.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue-i18n使用及踩坑记录

使用步骤 1. 安装 npm i vue-i18n 2. vue-cli下使用 //1. 引入 vue-i18n import Vue from vue import VueI18n from vue-i18n Vue.use(VueI18n)//2. 定义messages const messages {en: {text: {hello: hello world}},zh: {text: {hello: 你好、世界}} }//如果messages字段很多…

idea搭建web项目及tomcat部署总结

该文章为引用文章,原地址为:https://www.cnblogs.com/shindo/p/7272646.html 后面有我自己搭建过程中遇到的问题及解决方案,请参考。 一、创建简单web项目 1、创建一个web project File -> new Project ->选择project sdk 为1.6&#x…

Activiti工作流框架学习(一)环境的搭建和数据表的了解

一、什么是工作流 工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使…

基础、语法都不是最重要的,学Python最重要的是什么?编程思路!

论述 一些朋友自学python过程中,发现书也能看懂,书上的玩具代码也能看懂,但为啥自己不能做习题,不能写代码解决问题,自己不能动手写代码? 原因 初学者没有学会计算思维、解决问题的方法、编程思路。编程思路…

Activiti工作流引擎的使用

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 Activiti工作流引擎使用 1.简单介工作流引擎与Activiti 对于工作流引擎的解释请参考百度百科:工作流引擎 1.1 我与工作流引…

Flurry调查报告:图片和视频应用增长速度最快

据外国媒体报道,移动数据分析公司Flurry近期对应用分类的欢迎度进行研究后发现,就用户使用的时间而言,“图片和视频”应用已成为增长最快的移动应用。 Flurry对各种应用分类的800多万移动用户进行了调查,并利用其分析工具跟踪了1…

12-思科防火墙:ASA会话超时

一、实验拓扑:二、实验要求:DCD:死亡检测时间,默认R2 Telnet上去保持时间为1个小时,超时就会被清除掉,这里要求变为4小时,每15s就会发送5个DCD检测包,如没回应就剔除掉,回…

orCAD使用Orcad Capture CIS按Room摆放

http://www.sig007.com/EDAguide/176.html 37 使用Orcad Capture CIS按Room摆放 (1)打开原理图某一工程页 (2)按Ctrl键依次选中需要建Room的元件,右击,选择Edit Properties 在Filter by 下拉菜单中选择Cad…

细数25个硅谷最热创业公司 寻找创业灵感

【CSDN编译报道】硅谷堪称高科技产业之乡,每当提起就能联想到影响全球产业的各大著名企业Mircosoft、Google、Adobe、Oracle、Yahoo、SAP、intel等。而硅谷也被誉为创业公司的天堂,多如繁星的初创公司Karma、99Dresses、Getaround、Omada Health、Social…

数据特征分析:2.对比分析

对比分析 两个相互联系的数(指标)进行比较(绝对数比较、相对数比较) 对比分析 对比分析 → 两个互相联系的指标进行比较 绝对数比较(相减) / 相对数比较(相除)结构分析、比例分析、…

[Educational Round 5][Codeforces 616F. Expensive Strings]

这题调得我心疲力竭...Educational Round 5就过一段时间再发了_(:з」∠)_ 先后找了三份AC代码对拍,结果有两份都会在某些数据上出点问题...这场的数据有点水啊_(:з」∠)_【然而卡掉本弱还是轻轻松松的】 题目链接:616F - Expensive Strings 题目大意&a…

周鸿祎回顾IPO一周年:保持创业心态 看好无线

奇虎360董事长兼CEO周鸿祎 3月19日晚间消息,在奇虎360上市接近一周年之际,奇虎360董事长兼CEO周鸿祎与媒体及个人投资者进行沟通,他表示这一年压力比以前更大,因为在上市光环下依然需要保持创业心态,同时他强调无线和…

创业必经之路——Paul Graham创业曲线

导读:国外媒体avc.com近日发表一篇文章《The Startup Curve》,文中谈到创业者都处于Paul Graham创业曲线中各个阶段,不要一味的畏惧失败,要多倾听客户反馈并从中寻找制胜的信息。总而言之,不畏艰难即可成功。以下为文章…

Java:对象的强、软、弱和虚引用

见:http://zhangjunhd.blog.51cto.com/113473/53092 maven/Java/web/bootstrap/dataTable/app开发QQ群:566862629。希望更多人一起帮助我学习。 1.对象的强、软、弱和虚引用在JDK 1.2以前的版本中,若一个对象不被任何变量引用&am…

聊聊3种最常见的响应式设计问题

响应式设计方法对开发者非常有用,因为它使我们的内容在各种设备上广为传播。不用保留几个独立版本的网站,也可以摒除诸如缩放和流式布局这些方法的弊端。 缩放、流式布局与响应式 这些术语容易造成混淆,设计师常常错误地交替互用。实际上&…

帕累托分布(Pareto distributions)、马太效应

什么是帕累托分布 帕累托分布是以意大利经济学家维弗雷多帕雷托命名的。 是从大量真实世界的现象中发现的幂次定律分布。这个分布在经济学以外,也被称为布拉德福分布。 帕累托因对意大利20%的人口拥有80%的财产的观察而著名,后来被约瑟夫朱兰和其他人概括…

微信小程序的一些数据调用方式

1.模板数据的调用 一张图了解一下在wxml页调用预先定义好的模板: 可以看到上面调用了两个模板,数据调用却是不同的,obj是一个对象,对象内包含多个键值对形式的数据; tabbar是一个一维数组,每个数组项又都是…

解决:按截图 ctrl+alt+a QQ聊天窗口就自动最小化(QQ以外的可以截图)

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 一、问题如题 ,想截图QQ聊天记录都不行 二、 解决方法: 如图找到QQ截图按钮,点击下拉倒三角&…

数据库备份DBS商业化发布

数据库备份DBS商业化发布将在2018年7月11日 15:00-16:00直播,敬请关注! 数据库备份DBS为数据库提供连续数据保护、低成本的备份服务。 它可以为多种环境的数据提供强有力的保护,包括企业数据中心、其他云厂商及公共云。数据库备份提供数据备份…

堡垒机(跳板机)

堡垒机(跳板机)?现在一定规模互联网企业,往往都拥有大量服务器,如何安全并高效的管理这些服务器是每个系统运维或安全运维人员必要工作。现在比较常见的方案是搭建堡垒机环境作为线上服务器的入口,所有服务…