工作流1-以及activiti工作流

本文深入探讨工作流概念,介绍其在ERP、CRM、OA等领域的应用,以及Activiti框架如何通过BPMN实现业务流程管理。涵盖流程定义、发布、执行、监控与优化的全生命周期。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、什么是工作流

workflow,工作流程的计算模型,工作流程中先后组织起来的一系列规则

工作流要解决的主要问题是:
为实现某个业务目标,在多个参与者之间,利用计算机,按某种预定规则自动传递文档、信息或者任务

常见的工作流:
ERP,CRM,OA

工作流的生命周期

  • 流程定义
    收集业务需求转化为流程定义,由需求人员进行,由开发人员转化为计算机流程定义
  • 流程发布
    由开发人员打包各种资源,然后再系统管理中发布流程定义
  • 流程执行
    具体的流程引擎按照事先定义的流程处理路线及任务驱动的方式执行业务流程
  • 流程监控
    业务人员在办理任务的同时,收集每个任务的结果,然后根据结果做出相应处理
  • 流程优化
    为了满足业务变更的需求,对已经完成的流程进行二次,三次优化

二、Activiti工作流

Activiti是业务流程管理(BPM)框架,覆盖了业务流程管理、工作流、服务协等领域,

Spring boot会基于自动配置原理给我们隐式的创建一个工作流引擎对象ProcessEngine,并把RuntimeService(控制流程运行时数据流转)等核心服务注册到 Spring 容器中,我们只需要 依赖注入使用即可。

① 工作核心:ProcessEngine对象

负责生成流程运行时的各种势力及数据、监控和管理流程的运行
所有的操作都是从获取引擎开始的所以一般会把引擎作为全局变量

ProcessEngine processEngine = ProcessEngine.getDefaultProcessEngine();
BPMN:业务流程建模与标注

描述流程的基本符号,包括这些图元如何组成一个业务流程图

③ 数据持久化
I 使用了mybatis
II 数据库表

都是以ACT开头的
ACT_RE_*: ‘RE’ 表示repository。 这个前缀的表包含了流程定义和流程静态资源(图片,规则,等等)。
ACT_RU_*: 'RU’表示runtime。 这些运行时的表,包含流程实例,任务,变量,异步任务,等运行中的数据。 Activiti只在流程实例执行过程中保存这些数据,在流程结束时就会删除这些记录。 这样运行时表可以一直很小速度很快。
ACT_ID_*: 'ID’表示identity。 这些表包含身份信息,比如用户,组等等。
ACT_HI_*: 'HI’表示history。 这些表包含历史数据,比如历史流程实例,变量,任务等等。
ACT_GE_*: 通用数据,用于不同场景下,如存放资源文件。

23张表

在这里插入图片描述

④ activiti.cfg.xml配置文件

基于jdbc参数配置的数据库连接 会使用默认的mybatis连接池
配置了创建工具的基本参数和数据库连接池的参数

2.引擎服务器

7个大服务接口

3.流程设计器

eclipse有插件

4.原生支持spring

事务管理,解析表达式

5.分离运行时与历史数据

继承了jbpm4,表结构设计方面遵循运行时与历史数据的分离

开始activiti—>>>run next article

前 言 1 1 概 述 2 1.1 选题背景 2 1.2 组织结构 2 2 所用相关技术方法 3 2.1 工作流 3 2.1.1 什么叫工作流 3 2.1.2 工作流发展 3 2.1.3 工作流的优点 3 2.2 MVC工作模式 4 2.2.1 MVC设计思想 4 2.2.2 MVC的具体实现 5 2.2.3 MVC的不足 6 2.3 JSP技术介绍 6 2.3.1 JSP的运行原理 7 2.3.2 JSP的生命周期 8 2.3.3 ServletJavaBean技术介绍 8 2.3.4 Java 虚拟机 9 2.3.5 JSP访问SQL Server 2000数据库 9 2.4 数据库后台环境配置 10 2.5 系统开发工具简介 10 2.5.1 Dreamweaver 10 2.5.2 MyEclipse 10 2.5.3 Tomcat 11 2.5.4 SQL Server2000 11 2.5.5 chs_sql2ksp3 12 3 系统需求分析 13 3.1 系统功能分析 13 3.2 系统性能分析 13 3.3 系统方案的确定评价 13 4 系统总体设计 15 4.1 系统层次模块图 15 4.1.1 营业厅模块 15 4.1.2 收费管理模块 16 4.2 系统数据流程图 16 4.3 数据表设计 18 5 详细设计及编码 21 5.1 编写JAVABEAN 21 5.2 营业厅实现函数 21 5.3 收费厅主要的实现函数 22 5.4 JAVABEAN主要实现模块 22 5.4.1 中文字符格式的转换模块(Stringto.java) 22 5.4.2 自动生成验证码(Ran.java) 22 5.4.3 数据库的连接(ConnectionFactory.java) 23 5.4.4 数据库连接的关闭(DatabaseUtils.java)--只提供接口 23 5.4.5 密码修改模块(Common_fuction.java) 24 5.4.6 时间格式转换(timeBean.java) 24 5.4.7 数据统计(counthander.java) 25 5.4.8 营业厅的接口(luruaction.java) 27 5.4.9 营业厅的主要函数实现(luruhander.java) 28 5.4.10 收费厅的主要函数接口 32 5.5 管理员登陆模块 33 5.5.1 管理员登录 33 5.6 营业厅管理模块 36 5.6.1 Left.jsp页面 36 5.6.2 Work.jsp 40 5.6.3 customerlistinfo.jsp 41 5.6.4 allinfo.jsp 41 5.7 收费厅管理模块 42 5.7.1 Left.jsp 42 5.7.2 Work.jsp 43 5.7.3 Customerlistinfo.jsp 43 5.7.4 gongdan.jsp 43 6 系统测试与维护 45 6.1 测试目的 45 6.2 测试环境 45 6.3 系统测试 45 6.4 系统维护 45 7 开发难点与技术 46 7.1 主要程序实现的代码描述 46 7.1.1 验证码的自动生成 46 7.1.2 生成WORD工单 46 7.1.3 以一定的时间刷新页面 47 7.1.4 JSP中文问题的解决 47 7.2 在程序编码过程遇到的主要问题: 48 7.3 代码编写风格 49 7.4 我的不足: 49 结束语 50 致 谢 50
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值