Spring平台整合activiti工作流引擎实例

Spring结合activiti工作流完成一个请假与采购功能的工作流实例, 部门人员进行请假申请, 申请完成后部门经理进行审批,最后可以查看申请流程详情, 采购流程类似请假流程, 具体下载实例

实例下载:http://www.wisdomdd.cn/Wisdom/resource/articleDetail.htm?resourceId=1058

项目对应的实例代码可以通过【点击下载】进行下载

项目开发工具Eclipse, JDK1.8, Maven3.0.4, tomcat8 等工具也可以在【工具下载】栏目中下载

项目包含内容(见下图):

【Spring-activiti】 Maven项目

【activiti.sql】 数据脚本

Spring平台整合activiti工作流引擎实例

【功能简介】

在常用的ERP系统、OA系统的开发中,工作流引擎是一个必不可少的工具。本项目旨在基于Spring这一平台,整合业界流行的工作流引擎Activiti,并建立了两个完整的工作流进行演示:请假OA和采购流程。

其中包含的内容如下:

1.不采用activiti自带的用户、角色功能,因为过于简单,转而自行实现一个用户、角色、权限的三级结构,用户到角色,角色到权限均为多对多映射,持久层框架使用mybatis的collection和association标签嵌套实现;

2.使用默认的用户登录后(用户名xiaomi,密码1234),可看到已部署好的两个流程,请假OA和采购流程,其中,请假OA包含了用户任务、排他网关、起始结束事件,较为简单;采购流程除此之外,还使用了异常结束事件、子流程和边界事件的使用;

3.两个流程均包含了待办任务签收、运行流程进度追踪、已运行完流程历史记录查看的功能,运行流程进度在流程图中以红色标注;

4.使用时,将流程数据和业务数据相分离,使用业务号(businessKey)建立关联流程数据和业务数据的桥梁,使其相互可以访问,业务数据的主键即为业务号;

5.本系统所有表单均使用普通表单,而不是activiti的动态表单和外置表单,这样做是为了分表存放业务数据和流程数据;

6.系统前端采用基于Bootstrap的模板devoops建立。

7.起始页面入口:http://localhost:8080/Spring-activiti/login

【运行效果】

Spring平台整合activiti工作流引擎实例

Spring平台整合activiti工作流引擎实例

Spring平台整合activiti工作流引擎实例

【项目框架】

Spring平台整合activiti工作流引擎实例

【配置讲解】

1. 修改conf/spring-mybatis.xml,将相应的配置信息改为本地配置信息

1

2

3

4

5

6

7

8

9

10

<bean id="dataSource"class="com.mchange.v2.c3p0.ComboPooledDataSource"

destroy-method="close"

p:driverClass="com.mysql.jdbc.Driver"

p:jdbcUrl="jdbc:mysql://localhost:3306/activiti"

p:user="root"

p:password="ajqnhwvia"

p:maxPoolSize="40"

p:minPoolSize="2"

p:initialPoolSize="2"

p:maxIdleTime="30"/>

2. 将JDK版本设置为JDK1.8

3. 将TOMCAT版本设置为TOMCAT8

【数据】

1. 将数据脚本导入数据库后,打开表 user, 字段 username, password分别为用户名与密码

并且activiti对应的24张表也在数据脚本中(见下图)

猜你喜欢

转载自my.oschina.net/u/3743971/blog/1799949