JAVA工作流「java工作流引擎框架」(java工作流引擎开发)

一、 什么是工作流

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

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

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

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

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

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

这就是工作流技术。

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

JAVA工作流「java工作流引擎框架」(java工作流引擎开发)

二、 工作流技术的优点

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

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

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

三、 Java开发者会为什么要学Activity工作流

Java领域,JBPM和Activity是两个主流的工作流系统,而Activity的出现无疑将会取代JBPM(Activity的开发者就是从Jbpm开发者出来的)。

四、 Activity工作流学习要点

1. 1个插件

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

2. 1个引擎

ProcessEngine对象,Activity工作流引擎。这是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张表

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

JAVA工作流「java工作流引擎框架」(java工作流引擎开发)

6. 5项Service

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

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

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

7. 7项基本操作

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

流程定义增删改查

流程变量增删改查

启动流程定义

任务增删改查

完成任务

历史信息查询

学习7项基本操作时只需在JavaSE下执行即可,当然,做web项目的时候就要考虑和SSH等开发框架结合的问题。当然,只有基本操作学会了,综合开发并不难。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年7月5日 上午10:34
下一篇 2022年7月5日 上午10:36

相关推荐

  • 仓库常用erp系统(仓库常用erp系统有哪些)

    仓库的管理通常涉及车间生产、物流、采购、销售等板块。有些生产企业的仓库管理还涉及订单、生产进度、生产排产、班组、内部转移等。随着市场之间竞争日益激烈,如何系统化管控营运各个环节,对…

    科研百科 2024年7月18日
    61
  • 低代码开发平台的优缺点都有哪些?(低代码开发平台的优缺点都有哪些呢)

    低代码平台的营销口号听起来都非常吸引人:只需点击几下就能得到应用。但是,当你进行低代码开发时,你的企业真正的目的是什么呢? 当传统的开发模式面临成本高、周期长等困境的时候,低代码开…

    科研百科 2023年12月30日
    123
  • 运河文投集团工会经费收支管理培训班开讲

    【来源:扬州市人民政府国有资产监督管理委员会_企业动态】 为进一步规范基层工会经费收支管理,7月7日上午,运河文投集团举办基层工会经费收支管理业务培训班。运河文投集团全体工会委员及…

    科研百科 2022年7月26日
    250
  • 项目团队组织实施情况

    项目团队组织实施情况项目团队组织实施情况《中国电竞发展报告(2020)》显示,电子竞技项目已成为世界领先的体育娱乐项目。随着电竞赛事在全球范围内日益增多,各地也逐渐增多。随着电竞行…

    科研百科 2024年11月30日
    0
  • 湖南省 科研项目预算

    湖南省是中国经济较为发达的地区之一,拥有着丰富的自然资源和人文历史。在科技领域,湖南省也取得了许多重要的进展。科研项目预算是湖南省科研项目管理的重要环节之一,其预算的编制有助于确保…

    科研百科 2025年4月10日
    1
  • 海外院校科研项目

    海外院校科研项目 近年来,随着全球化的不断深入,越来越多的海外院校开始承担科研项目,并在国内学术界引起了广泛的关注和认可。在这些项目中,海外院校的声誉和影响力得到了进一步提升,同时…

    科研百科 2025年2月11日
    0
  • 护理科研项目实施方案

    护理科研项目实施方案 随着医疗技术的不断发展,护理科研项目已成为提高护理水平、促进护理创新的重要途径。作为其中的一种形式,护理科研项目实施方案对于护理团队来说至关重要。本文将介绍一…

    科研百科 2025年4月29日
    1
  • 一次通过高级信息系统项目管理师,我是如何做到的?(“信息系统项目管理师”)

    软考是计算机技术与软件专业技术资格(水平)考试的简称,是由国家人力资源和社会保障部、工业和信息化部领导的国家级考试,这种考试既是职业资格考试,又是职称资格考试。该考试分为 5 个专…

    2022年6月10日
    238
  • 银行1%配备审计人员

    银行1%配备审计人员 随着金融服务业的快速发展,银行在业务规模、业务范围和风险管控等方面都取得了巨大的进步。然而,银行业务的复杂性和风险性也使得银行需要更加专业的审计人员来确保业务…

    科研百科 2024年11月30日
    0
  • 吉林省建设工程项目管理

    吉林省建设工程项目管理 吉林省是一个拥有悠久历史和文化的省份,同时也是中国东北地区的一个重要经济中心。在吉林省,建设工程项目管理是一个非常重要的领域,涉及到建筑、桥梁、道路、隧道、…

    科研百科 2024年8月26日
    42