您的位置:首页 > 其它

(三)activiti框架搭建

2016-02-04 11:42 260 查看
与spring和数据库整合的过程
现在大多项目都使用了spring和maven,所以这里将activiti与spring进行集成,并使用maven来构建项目。
准备工作:一个maven项目,并已经集成了spring环境,持久层建议使用hibernate。要说明的是activiti是使用的datasource,因此持久层使用哪种框架时没有严格的限定的。
 
开始集成activiti。在项目的pom文件中加入如下一个依赖:

<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
<version>5.17.0</version>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring</artifactId>
<version>5.17.0</version>
</dependency>


就可以了。

下面配置xml
在spring的xml配置文件中加入如下配置:
首先是流程引擎基础类:

<beanid="processEngineConfiguration"class="org.activiti.spring.SpringProcessEngineConfiguration">
<!--自动部署方式 -->
<propertyname="deploymentMode" value="single-resource" />
<!--这里引用的数据源要改成具体配置的数据源 -->
<propertyname="dataSource" ref="xxxxx" />
<propertyname="transactionManager" ref="transactionManager" />
<!--设置建表策略 -->
<propertyname="databaseSchemaUpdate" value="true" />
<propertyname="jobExecutorActivate" value="false" />
<propertyname="history" value="audit" />
<propertyname="activityFontName" value="宋体" />
<propertyname="labelFontName" value="宋体" />
</bean>


然后是流程引擎:

<!--流程引擎 -->
<beanid="processEngine"class="org.activiti.spring.ProcessEngineFactoryBean">
<propertyname="processEngineConfiguration" ref="processEngineConfiguration"/>
</bean>


最后是流程引擎对外的7个服务:

<!--流程引擎几个主要的service -->
<beanid="repositoryService" factory-bean="processEngine"
factory-method="getRepositoryService"/>
<beanid="runtimeService" factory-bean="processEngine"
factory-method="getRuntimeService"/>
<beanid="formService" factory-bean="processEngine"
factory-method="getFormService"/>
<beanid="identityService" factory-bean="processEngine"
factory-method="getIdentityService"/>
<beanid="taskService" factory-bean="processEngine"
factory-method="getTaskService"/>
<beanid="historyService" factory-bean="processEngine"
factory-method="getHistoryService"/>
<beanid="managementService" factory-bean="processEngine"
factory-method="getManagementService"/>


就OK了。剩下的就是在spring中使用activiti了。
 
由于这里配置了自动建表策略,所以当工程启动时,activiti所需的表就会被自动创建,默认acitiviti的表都是以act_打头的。
说明一点,activiti是共用的spring的上下文,因此任何在spring中提供的service等在acitviti都是可以直接是用的。另外activiti也是支持使用el表达式的。
下篇讲解如何在代码中使用activiti。
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: