关于activiti流中核心对象的三种创建方式

在学习activiti的过程中,了解到了三种核心对象的创建方式.

1.不通过配置文件,直接代码生成方式(方式一)

代码示例:

ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration
    .createStandaloneProcessEngineConfiguration();
  //设置与数据库的链接
  processEngineConfiguration.setJdbcUrl("jdbc:mysql:///activati?createDatabaseIfNotExist=true");
  processEngineConfiguration.setJdbcDriver("com.mysql.jdbc.Driver");
  processEngineConfiguration.setJdbcUsername("root");
  processEngineConfiguration.setJdbcPassword("123456");
  //创建表
  processEngineConfiguration.setDatabaseSchemaUpdate("true");
  //创建的核心服务对象(一旦创建核心对象,就会开始建表)
  ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
  System.out.println(processEngine);

这种方式的话是不用配置xml文件的,直接在.java文件写配置,叫做硬编码,但是缺点很明显,配置不够灵活,如果需要修改数据库的话就要直接改代码.

2.1配置文件方式(方式二)

我eclipse中的项目结构如下:
eclipse的项目结构

代码示例:

//加载配置类的对象
  ProcessEngineConfiguration fromResource = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
  //核心对象
  ProcessEngine processEngine = fromResource.buildProcessEngine();
  System.out.println(processEngine);

通过这种方式的话,就能有效避免代码不灵活,直接在配置文件中修改配置, activiti.cfg.xml的文件名可以随意修改,只要把文件名对应上即可.但是不推荐这种方式,还有一种更简单的方式.

2.1配置文件方式(方式三)

代码示例:

//在底层源码加载了activiti.cfg.xml文件
  ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();

这种方式的话只需要一句代码即可实现,但是有一个要求,就是配置文件名必须是activiti.cfg.xml,否者就无法加载配置文件.原因是在这个方法的底层源码中已经为我们加载了一个叫做activiti.cfg.xml的文件,所以无需手动加载.

底层源码如下:
getDefaultProcessEngine()的底层源码

以上便是创建activiti流核心对象的三种方式,推荐使用第三种方式,简便,快捷,而且注重Spring框架的核心要素 :约定大于配置.

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值