activiti工程环境搭建和流程图创建

        当一个业务需要的多个参与者来参与执行的时候,如果我们要自己编程的话,我们需要对业务非常的熟悉,并且在编程的时候要做一系列复杂的判断,如果出现第一种情况,我们要怎么办,如果出现第二种情况,我们又该怎么办,这是一个工作量非常大的事情,因为各个关系耦合性相对较高,所以我们又很难保证我们的系统一定会成功,然而大神们为了解决我们这个问题,专门开发了一个用于解决多用于之间操作的框架,工作流(WorkFlow)Activiti。
       工作流主要解决的主要问题是:为了实现某个业务目标,利用计算机在多个参与者之间按某种预定规则自动传递文档、信息或者任务。

        举个例子,如果我们要请假,我们需要先找项目经理请假,然后项目经理找老总批示,老总最后决定这个假给还是不给,这样的话就是一个典型的工作流业务。话不多说,我们看看我们如果将这个过程在代码中如何利用工作流来呈现。

      新建一个工程(Project),选择Dynamic Web Project,工程名称叫做ActivitiDemo01,既然是人家做好的一个框架,我们需要搭建一个基本的框架,因为这里是做的一个基本的演示,我就没有按照经典的SSH来搭建,而是简单的一个框架。

      环境搭建

     1.选择jar包。

      下载activiti-5.13,打开后,把activiti-5.13\wars\activiti-rest\WEB-INF\lib个下的包都考到项目WEB-INF下的lib文件夹下,当然还需要一个MySQL的驱动jar包,这样我们需要的jar包就都有了。

      2.配置文件

     打开activiti-5.13文件夹-->打开wars,我们会看到activit-content.xml文件,拷贝下来,粘贴到工程下的resource愿文件夹下,重命名为acitiviti.cfg.xml,打开后把除引用外的内容都删除,并写上如下代码:

[html]  view plain  copy
  1.       <bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">  
  2.     <property name="jdbcDriver" value="com.mysql.jdbc.Driver"></property>  
  3.     <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/activitiDemo?useUnicode=true&characterEncoding=utf8"></property>  
  4.     <property name="jdbcUsername" value="root"></property>  
  5.     <property name="jdbcPassword" value="root"></property>  
  6.     <property name="databaseSchemaUpdate" value="true"></property>  
  7. </bean>  

     3.创建数据库

     这里我们用的是activiti自带的数据库,因为在activitie.jar中的实体都有了,我们需要些一个测试方法,用来创建数据库。打开数据库(mysql),然后创建数据库activitiDemo,然后创建要给测试类在test的原文件夹下,代码如下:

[java]  view plain  copy
  1.        @Test  
  2. public void test() {  
  3.     ProcessEngine processEngine = ProcessEngineConfiguration  
  4.                         .createProcessEngineConfigurationFromResource("activiti.cfg.xml")  
  5.                         .buildProcessEngine();  
  6.     System.out.println("processEngine:"+ processEngine);  
  7. }  
      现在mysql中新建一个数据库,叫activitiDemo,然后执行上边的代码来创建表,这个过程稍微长一些,耐心等待即可。
      这样一个基本的环境就搭建好了。有了jar包,有了配置文件,有了数据库,接下来我们就穿件一个简单的请假流程图。

      workFlow画图

      在resource下新建page-->diagrams,右键新建--->other-->Activiti Diagram,看到如下界面:

       如上图:左半部分是画图区,右半部份是工具栏,这样我们就可以画了,咱们先画一个简单的请假吧:

      点击空白处,设置流程图的ID和那么,点击任务,设置相应的名称,是不是非常的简单,那么下篇博客,我们会介绍他们的api和数据库表的使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Activiti一个基于Java的开源工作流引擎,它提供了一套完整的工作流解决方案。下面是Activiti的架构图: 1. Process Engine:流程引擎是Activiti的核心组件,负责解析和执行BPMN 2.0流程定义。它管理流程实例、任务、执行等核心对象,并提供了相关的API供开发者使用。 2. Process Repository:流程仓库用于存储和管理流程定义。它提供了对流程定义的部署、查询和更新等操作。 3. Process Instance:流程实例是流程定义的一次执行过程,代表了某个具体的业务流程。每个流程实例都有一个唯一的ID,可以进行状态跟踪和管理。 4. Task:任务是工作流中的待办事项,代表了需要参与者完成的工作。任务可以分配给特定的用户或角色,也可以设置任务的优先级、截止日期等属性。 5. Identity Service:身份服务用于管理用户和组织机构信息。它提供了用户认证、授权、用户组管理等功能,以便在工作流中进行用户和角色的管理。 6. History Service:历史服务用于跟踪和管理流程实例的历史数据。它可以记录流程的执行时间、任务完成情况、变量值等信息,方便后续的审计和分析。 7. Form Service:表单服务用于定义和管理流程中的表单。它提供了创建、更新和查询表单的功能,以便在流程中收集和展示业务数据。 8. Management Service:管理服务提供了一些管理和监控Activiti引擎的功能。例如,可以通过管理服务进行流程实例的挂起、恢复,或者查询引擎的性能指标等。 以上就是Activiti的基本架构图,它提供了一个完整的工作流引擎,可以用于设计和执行各种类型的业务流程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值