在新版本中,我们通过实验可以发现 IdentityService,FormService两个 Serivce都已经删除了。 所以后面我们对于这两个 Service 也不讲解了,但老版本中还是有这两个 Service,同学们需要了解一下

ProcessEngineConfiguration:
流程引擎的配置类,通过 ProcessEngineConfiguration可以创建工作流引擎 ProceccEngine,常用的两
种方法如下
Activiti可以单独运行,使用它创建的 ProcessEngine,Activiti 会自己处理事务。
配置文件方式:通常在activiti.cfg.xml 配置文件中定义一个 id 为 processEngineConfiguration 的 bean,这里会使用 spring的依赖注入来构建引擎。
方法如下:
<<log4j.properties>>
<<activiti.cfg.xml>>
SpringProcessEngineConfiguration :通过 org.activiti.spring.SpringProcessEngineConfiguration与 Spring 整合。
创建 spring 与 activiti的整合配置文件:
activity-spring.cfg.xml(名称不固定)
创建 processEngineConfiguration
ProcessEngineConfiguration configuration =ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml")
上边的代码要求 activiti.cfg.xml中必须有一个 processEngineConfiguration 的 bean也可以使用下边的方法,更改 bean的名字:
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource(Stringresource, String beanName);
ProcessEngine :工作流引擎,相当于一个门面接口,通过 ProcessEngineConfiguration 创建 processEngine,通过ProcessEngine创建各个 service 接口。
一般创建方式
//通过ProcessEngineConfiguration创建ProcessEngine
ProcessEngineprocessEngine = processEngineConfiguration.buildProcessEngine();
简单创建方式
将activiti.cfg.xml 文件名及路径固定,且 activiti.cfg.xml文件中有 processEngineConfiguration的配置,
可以使用如下代码创建 processEngine:
//使用classpath下的activiti.cfg.xml中的配置创建processEngine
ProcessEngineprocessEngine = ProcessEngines.getDefaultProcessEngine();
System.out.println(processEngine);
Service 创建方式
通过 ProcessEngine 创建 Service,Service是工作流引擎提供用于进行工作流部署、执行、管理的服务接口。方式如下:
RuntimeService runtimeService =processEngine.getRuntimeService();
RepositoryService repositoryService =processEngine.getRepositoryService();
TaskService taskService =processEngine.getTaskService();

1:RepositoryService :是 activiti 的资源管理类,提供了管理和控制流程发布包和流程定义的操作。使用工作流建模工具设计的业务流程图需要使用此service 将流程定义文件的内容部署到计算机。 除了部署流程定义以外还可以:查询引擎中的发布包和流程定义。 暂停或激活发布包,对应全部和特定流程定义。 暂停意味着它们不能再执行任何操作了,激活
是对应的反向操作。获得多种资源,像是包含在发布包里的文件, 或引擎自动生成的流程图。获得流程定义的 pojo 版本, 可以用来通过 java 解析流程,而不必通过 xml。
2:RuntimeService :它是activiti 的流程运行管理类。可以从这个服务类中获取很多关于流程执行相关的信息
3:TaskService :是 activiti 的任务管理类。可以从这个类中获取任务的信息。
4:HistoryService:是 activiti 的历史管理类,可以查询历史信息,执行流程时,引擎会保存很多数据(根据配置),比如流程实例启动时间,任务的参与者,完成任务的时间,每个流程实例的执行路径,等等。 这个服务主要通过查询功能来获得这些数据。
5:ManagementService 是 activiti 的引擎管理类,提供了对 Activiti 流程引擎的管理和维护功能,这些功能不在工作流驱动的应用程序中使用,主要用于Activiti系统的日常维护。