在前一段时间,在一个物料管理的系统的时候,客户在谈进货管理的需求的时候,说要用到审批流程。博主表示没有做过流程管理的项目,也没有集成过相关的框架到项目。有点小方,但是也只能摸着石头过河呗。查了一下网上关于流程管理的框架,发现还是比较多的介绍,考虑到对这类框架的接触不多,我就选了一个比较成熟、主流、资料介绍也比较多的框架,也就是activiti了,我集成的步骤如下。

   第一, 安装流程开发插件。在myeclipse里安装activiti的流程图开发插件,即Activiti BPMN 2.0 Diagram。集成插件的方法很简单,只要把下载好的插件解压,放在eclipse或myeclipse安装为下的dropins目录即可,重启就可以使用了!    

    第二, jar包选择。下载activiti的jar包。关于jar包选择,这个方面,我是选用了activiti所有的jar包,它本身还集成了spring和mybatis。这意味着在这个框架activiti是完全独立的,使用这些全部的jar包,不管你现在的项目是什么架构的都能使用这个框架,因为使用mybatis意味着,它本身就能单独完成读写数据库,不需要其他的orm框架的支持。全部的jar显示如下:

Java 流程化配置框架 java流程管理框架_Java 流程化配置框架

Java 流程化配置框架 java流程管理框架_xml_02

 

    第三,配置。activiti的配置有两种方式:分别是单独创建流程引擎和spring方式下创建流程引擎。区别在与processEngineConfiguration的class。

(1) 单独模式:它会去classpath下的activiti.cfg.xml(文件名必须是这个),基于这个配置来创建引擎。

Java 流程化配置框架 java流程管理框架_Java 流程化配置框架_03

<?xml version="1.0" encoding="UTF-8"?>
 <beans xmlns="http://www.springframework.org/schema/beans"  
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
        xsi:schemaLocation="http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans.xsd">  
   
 <bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
     <property name="jdbcUrl" value="jdbc:sqlserver://xxx;databaseName=xxx" />  
     <property name="jdbcDriver" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />  
     <property name="jdbcUsername" value="xxxx" />  
     <property name="jdbcPassword" value="xxxx" />  
     <property name="databaseSchemaUpdate" value="true" />  
 <!--     <property name="jobExecutorActivate" value="false" />  
     <property name="asyncExecutorEnabled" value="true" />  
     <property name="asyncExecutorActivate" value="false" />  
     <property name="mailServerHost" value="mail.my-corp.com" />  
     <property name="mailServerPort" value="5025" />   -->
   </bean>  
 </beans>

 

(2)Spring模式

1.如果要在spring环境下使用流程引擎,配置文件名可以叫做spring-activiti.xml等自定义的名字。

而且类要发生变化:org.activiti.spring.SpringProcessEngineConfiguration

Java 流程化配置框架 java流程管理框架_Java 流程化配置框架_04

然后这个spring-activiti.xml文件要被引用,名字要对应。

比如我的项目里,是这么引用的:web.xml引用spring-app.xml,spring-app.xml引用spring-activiti.xml。

Java 流程化配置框架 java流程管理框架_xml_05

Java 流程化配置框架 java流程管理框架_spring_06

2.数据库的配置

由前面可以知道,不管是单独模式还是spring模式,processEngineConfiguration里面的属性配置是一样的。

但是数据库的配置也有两种方式。

(1)jdbc方式

 

Java 流程化配置框架 java流程管理框架_spring_07

 

(2)dataSource方式

 

Java 流程化配置框架 java流程管理框架_Java 流程化配置框架_08

 按照这个步骤我们就完成了activiti的配置步骤了。

 

 

 

第四,创建activiti的23三张表。如果你想在本地运行main函数,直接创建表,建议你这么做

Java 流程化配置框架 java流程管理框架_bc_09

 

 

 

第五,流程图设计