Activiti简单学习心得一

前言:

在做项目的时候,公司的项目要用到Activiti,所以,我就开始了各种资料的搜寻,包括视频,代码,源码等等等等,都尝试了一遍,但是还是感觉学不好。有一本书还挺不错的,推荐给大家,这一系列的书其实都挺不错的《Activiti in action》,可以有中文版的电子档,建议可以去买一本这样的书。毕竟嘛,支持原创。


如果是刚开始学习Activiti的话,其实最重要就是BPMN2.0规范了,Activiti只是一种实现了大部分BPMN2.0规范的工作流框架而已。但是我不建议大家一开始就去看BPMN2.0规范,因为看不懂,我也看不懂。那么学习Activiti怎么样才是有效的呢?


其实Acitivit中涉及到很多的数据库表,总共有23张,但是有部分的数据表是没有用到的,当然这个得看具体功能了。如下图是23张Activiti表,记住,这23张表不是让你手动去创建的,在Activiti当中已经有关于这方面的操作了。所以你别担心。接下来我就来说说,怎么去创建Activiti的23张表吧。如下图是23张表:


1、既然是学习Activiti的框架,那么首先肯定是离不开项目了,首先创建一个项目,所有项目都采用Maven管理,这样就省去依赖关系的jar包。

创建Maven项目自行网上搜索,这里不再赘述。那么导入jar包,也自然而然是在maven项目当中的pom.xml文件啦。

如下图是maven项目当中的pom文件图片:


这里关于dependency我就不多说了。其他的需要的jar包请自行添加。


2、添加完jar包的依赖之后,在联网的情况下,会自动下载相关的jar包,不需要你管,下载完成以后,可以在如下的Maven Dependencies中查看到对应的jar包。

3、我们添加一个Junit测试,所以添加一下JUnit4的jar包。如上图所示:

4、在src/main/java目录下创建一个com.xqkj.java包,在这个包下编写一个java类,名称为TestJava.如下图所示:(resources下的activiti.cfg.xml文件没有没关系,可以删除)


5、在该类当中填入编写如下的代码:(关于具体配置细节,先有个大概的认识)

package com.xqkj.test;

import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;

import org.junit.Test;

public class TestJava {
	
	/**使用代码创建工作流需要的23张表*/  
    @Test  
    public void createTable(){  
        //流程引擎ProcessEngine对象,所有操作都离不开引擎对象  
        ProcessEngineConfiguration processEngineConfiguration =  
                ProcessEngineConfiguration.createStandaloneInMemProcessEngineConfiguration();  
        //连接数据库的配置  
        processEngineConfiguration.setJdbcDriver("com.mysql.jdbc.Driver");  
        processEngineConfiguration.setJdbcUrl("jdbc:mysql://localhost:3306/yarcl?useUnicode=true&characterEncoding=utf8");  
        processEngineConfiguration.setJdbcUsername("root");  
        processEngineConfiguration.setJdbcPassword("root");  
      
        //三个配置  
        //1.先删除表,再创建表:processEngineConfiguration.DB_SCHEMA_UPDATE_CREATE_DROP="create-drop"  
        //2.不能自动创建表,需要表存在:processEngineConfiguration.DB_SCHEMA_UPDATE_FALSE="false"  
        //3.如果表存在,就自动创建表:processEngineConfiguration.DB_SCHEMA_UPDATE_TRUE="true"  
        processEngineConfiguration.setDatabaseSchema(processEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);  
        //获取工作流的核心对象,ProcessEngine对象  
        ProcessEngine processEngine=processEngineConfiguration.buildProcessEngine();  
        System.out.println("processEngine:"+processEngine+"Create Success!!");  
    }  
	

}

6、这个时候,双击createTable这个类,进行单元测试,如果控制台出现如下的内容,说明23张表创建成功!



posted @ 2017-06-06 18:08  yarcl  阅读(192)  评论(0编辑  收藏  举报