Spring和activiti进行整合过程解析
一、整合原理
activiti的配置文件本身就是一个spring的配置文件,但默认情况下只讲ProcessEngineConfiguration作为一个bean来使用,调用ProcessEngines.getDefaultProcessEngine()加载的就是配置文件中的这个bean。和spring整合后就可以把bean的管理让spring来进行,在代码中获取任意的bean。
activiti提供了一个spring模块,在一个spring工程中引入这个模块就能够整合
org.activiti activiti-spring 5.22.0
并且引入这个依赖后就不需要再单独引入activiti的依赖了,这里边已经包含了
二、整合步骤
2.1新建一个maven工程并导入相关依赖
org.springframework spring-context 5.0.2.RELEASE org.activiti activiti-spring 5.22.0 mysql mysql-connector-java 5.1.26 c3p0 c3p0 0.9.1.2 jar compile commons-io commons-io 2.4 junit junit 4.12
这里导入了spring,activiti,数据库驱动等依赖。
2.2创建spring配置文件
在resources目录下创建spring配置文件,applicationContext.xml,其中主要配置如下bean
(1)数据源(连接池)
(2)事务管理器(和spring整合后必须配置事务管理器)
(3)流程引擎配置对象,这里可以注入一些流程引擎的配置
(4)流程引擎对象
(5)activiti的服务组件,配置后在程序中可以直接从容器中获取
完整的配置文件如下
三、测试
在代码中加载spring配置文件,并直接从容器里获取服务组件,看能否直接使用服务组件
@Test publicvoidtest4(){ ApplicationContextcontext=newClassPathXmlApplicationContext("applicationContext.xml"); //通过容器获取taskService组件 TaskServicetaskService=(TaskService)context.getBean("taskService"); System.out.println(taskService); Listlist=taskService.createTaskQuery().taskAssignee("tom").list(); for(Tasktask:list){ System.out.println(task); } }
如果能够成功运行,说明activiti和spring已经整合完成了。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。