1.不使用配置文件创建
// 不使用配置文件创建
ProcessEngineConfiguration config = new
StandaloneProcessEngineConfiguration();
config.setJdbcDriver("com.mysql.jdbc.Driver");
config.setJdbcUrl("jdbc:mysql://localhost:3306/test");
config.setJdbcUsername("root");
config.setJdbcPassword("root123");
config.setDatabaseSchema("true");
ProcessEngine engine = config.buildProcessEngine();
System.out.println(engine);
2.加载默认配置文件创建
// 加载默认配置文件 activiti.cfg.xml
ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
System.out.println(engine);
3.自定义配置文件创建
// 自定义加载配置文件
ProcessEngineConfiguration config =
ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
ProcessEngine engine = config.buildProcessEngine();
4.流程引擎
(1)流程引擎是整个activiti的核心,所有的service都需要通过流程引擎来获得
(2)流程引擎会在创建的时候检查数据库表是否存在,如果不存在则会跑出异常,若要让引擎自动建表,则需要在配置文件添加
<property name="databaseSchemaUpdate" value="true"></property>
(3)activiti支持链式编程
5.service服务
1.仓库服务
/** 仓库服务 */
RepositoryService repositoryService = engine.getRepositoryService();
仓库服务是存储相关的服务,一般用来部署流程文件,获取流程文件,查询流程定义信息等操作,是引擎中的一个重要的服务
2.运行时服务
/** 运行时服务 */
RuntimeService runtimeService = engine.getRuntimeService();
流程运行时的流程实例,流程定义,流程版本,流程节点等信息,使用运行时服务操作,是引擎中的一个重要的服务
3.任务服务
/** 任务服务 */
TaskService taskService = engine.getTaskService();
流程运行时的会产生任务,接收、办理、完成等操作使用任务服务完成,是引擎中的一个重要的服务
4.认证服务
/** 认证服务 */
//一般不使用自带的认证服务,每个系统都有自己的认证系统
IdentityService identityService = engine.getIdentityService();
流程运行过程中的一些用户信息,组信息等操作使用认证服务,但是认证服务一般只作为辅助,每一个系统都有一个比较完整的人员系统
5.历史服务
/** 历史服务 */
HistoryService historyService = engine.getHistoryService();
流程运行时,和运行完成之后的一些历史信息,包括历史任务,历史节点灯,是引擎中的一个重要的服务
6.表单服务
/** 表单服务 */
FormService formService = engine.getFormService();
流程运行时的任务表单信息,是引擎中的一个辅助的服务
8.动态流程服务(新增)
/** 动态流程服务 */
DynamicBpmnService dynamicBpmnService = engine.getDynamicBpmnService();
一个新增的服务,用于动态修改流程中的一些参数信息等,是引擎中的一个辅助的服务