java1234_Activiti_第1講_25張表

今天的話,咱們大概來說下Activiti的25張表。java

Activiti的運行支持,必需要有Activiti的25張表,主要是在流程運行過程當中,記錄存儲一些參與流程的用戶主體,mysql

組,以及流程定義的存儲,流程執行時候的一些信息,以及流程的歷史信息等(後面咱們會詳細介紹這些表做用)spring

 

咱們先寫一個小實例,來把Activiti的25張表自動生成出來;sql

 

咱們先建一個Maven項目 ActivitiDemo1數據庫

pom.xml里加上 Activiti支持,以及mysql驅動包。eclipse

<dependencies>
     <dependency>
        <groupId>org.activiti</groupId>
        <artifactId>activiti-engine</artifactId>
        <version>5.19.0.2</version>
    </dependency>
     
    <dependency>
        <groupId>org.activiti</groupId>
        <artifactId>activiti-spring</artifactId>
        <version>5.19.0.2</version>
    </dependency>
     
    <dependency>
        <groupId>org.activiti</groupId>
        <artifactId>activiti-bpmn-model</artifactId>
        <version>5.19.0.2</version>
    </dependency>
     
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.38</version>
    </dependency> 
    
 		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.11</version>
		</dependency>
     
	</dependencies>

而後咱們建立一個單元測試類 ActivitiTest01  (注意,有時候用本身的junit jar包,會出現詭異問題,因此咱們推薦用eclipse插件自帶的junit jar包)異步

建立後的項目結構以下:ide

QQ鎴浘20160330110307.jpg

 

而後咱們寫一個測試方法,testCreateTable單元測試

而且在建立db_activiti數據庫;測試

咱們要先來獲取流程引擎配置,而後來配置流程引擎,要配置驅動包,url,數據庫用戶名,密碼;

還要設置schema,這裏的schema要設置成update。這樣能夠自動更新

配置後,咱們經過配置來獲取流程引擎。建立實例的時候咱們就能夠自動生成須要的25張表。

 

上代碼:

@Test
	public void testCreateTable(){
		ProcessEngineConfiguration pec=ProcessEngineConfiguration.createStandaloneProcessEngineConfiguration(); // 獲取流程引擎配置
		pec.setJdbcDriver("com.mysql.jdbc.Driver"); // 配置驅動
		pec.setJdbcUrl("jdbc:mysql://localhost:3306/db_activiti"); // 配置鏈接地址
		pec.setJdbcUsername("root"); // 用戶名
		pec.setJdbcPassword("123456"); // 密碼
		
		/**
		 * 配置模式  true 自動建立和更新表
		 */
		
		pec.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
		
		// 獲取流程引擎對象
		ProcessEngine pe=pec.buildProcessEngine(); 
	}

咱們運行測試類,運行完咱們刷新數據庫,便可看到25張表:

QQ鎴浘20160330110908.jpg

 

ACT_RE_*: 'RE'表示repository。 這個前綴的表包含了流程定義和流程靜態資源 (圖片,規則,等等)。

ACT_RU_*: 'RU'表示runtime。 這些運行時的表,包含流程實例,任務,變量,異步任務,等運行中的數據。 Activiti只在流程實例執行過程當中保存這些數據, 在流程結束時就會刪除這些記錄。 這樣運行時表能夠一直很小速度很快。

ACT_ID_*: 'ID'表示identity。 這些表包含身份信息,好比用戶,組等等。

ACT_HI_*: 'HI'表示history。 這些表包含歷史數據,好比歷史流程實例, 變量,任務等等。

ACT_GE_*: 'GE'表示general。通用數據, 用於不一樣場景下,如存放資源文件。

這些表結構,還有一些輔助表。咱們後續會詳細解釋,這裏你們先大致瞭解便可;

 

完整代碼打包下載:http://pan.baidu.com/s/1jIIqxZS

相關文章
相關標籤/搜索