工作流activiti技术的研究和学习记录第一天

activiti需要的环境:

1) JDK1.6或者更高版本

2) 支持的数据库有:h2, mysql, oracle, postgres, mssql, db2等。

3) 支持activiti5运行的jar包

4) 开发环境为Eclipse3.7或者以上版本,myeclipse为8.6版本

activiti可以到Activiti官方网站下载得到

http://activiti.org/download.html

http://zipin168.com

安装流程设计器(eclipse插件)

安装方式一(安装步骤流程请看附件)

1) 打开 Help -> Install New Software. 在如下面板中:


2) 在如下Install界面板中,点击Add按钮:



配置新装插件的地址和名称



3) 然后填入下列字段

Name: Activiti BPMN 2.0 designer

Location: http://activiti.org/designer/update/



4) 回到Install界面,在面板正中列表中把所有展示出来的项目都勾上:



5) 点击复选框

在Detail部分记得选中 "Contact all updates sites.." , 因为它会检查所有当前安装所需要的插件并可以被Eclipse下载.



6) 安装完以后,点击新建工程new->Other…打开面板,如果看到下图内容:



说明安装成功了。

准备Activiti5开发环境

添加Activiti5的jar包:

在activiti-5.13->wars目录下是一些示例项目,解压activiti-rest项目,导入activiti-rest目录中WEB-INF\lib下所有包。添加到classpath中。



由于我们使用的是Mysql数据库,Mysql数据库的链接驱动Activiti官方包中并没有提供,需要我们自己导入。手动导入mysql-connector-java.jar,添加到classpath

初始化数据库

/**使用代码创建工作流需要的23张表*/
@Test
public void createTable(){
ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration.createStandaloneProcessEngineConfiguration();
//连接数据库的配置
processEngineConfiguration.setJdbcDriver("com.mysql.jdbc.Driver");
processEngineConfiguration.setJdbcUrl("jdbc:mysql://localhost:3306/itcastactiviti?useUnicode=true&characterEncoding=utf8");
processEngineConfiguration.setJdbcUsername("root");
processEngineConfiguration.setJdbcPassword("root");
/**
public static final String DB_SCHEMA_UPDATE_FALSE = "false";不能自动创建表,需要表存在
public static final String DB_SCHEMA_UPDATE_CREATE_DROP = "create-drop";先删除表再创建表
public static final String DB_SCHEMA_UPDATE_TRUE = "true";如果表不存在,自动创建表
*/
processEngineConfiguration.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
//工作流的核心对象,ProcessEnginee对象
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
System.out.println("processEngine:"+processEngine);
}
在Activiti中,在创建核心的流程引擎对象时会自动建表。如果程序正常执行,mysql会自动建库,然后创建23张表

添加并制定配置文件
在Actiiti5中定制流程必定会操作到数据库,如果都像上面那样写一大段代码会非常麻烦,所以我们可以把数据库连接配置写入配置文件。
在Activiti5的官方示例中并没有现成的配置文件,所以先得找到activiti-rest\WEB-INF\classes下有:
activiti-context.xml
一个类似spring结构的配置文件,清空内容后改名为activiti.cfg.xml,用来做流程引擎的相关配置。
按照上面代码配置ProcessEngineConfiguration对象,主要定义数据库的连接配置和建表策略,配置文件代码如下:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
<!-- 配置外部数据库连接信息-->
<!-- <context:property-placeholder location="classpath:db.properties"/> -->
<bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
<property name="jdbcUrl" value="jdbc:mysql:///itcastactiviti?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf8" />
<property name="jdbcDriver" value="com.mysql.jdbc.Driver" />
<property name="jdbcUsername" value="root" />
<property name="jdbcPassword" value="root" />
<!-- 建表策略 -->
<property name="databaseSchemaUpdate" value="true"></property>
</bean>
</beans>

Java代码如下:
@Test
public void createTable_2(){
// ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
// //工作流的核心对象,ProcessEnginee对象
// ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();

ProcessEngine processEngine = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml")
.buildProcessEngine();
System.out.println("processEngine:"+processEngine);
}

createProcessEngineConfigurationFromResource的参数值为我们添加的配置文件activiti.cfg.xml的名称,执行java代码,流程引擎对象创建成功运行后数据库会自动建表。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Activiti是一款开源的Java工作流引擎,它是目前比较流行的工作流引擎之一。下面是Activiti工作流国内外研究现状的简要介绍: 1. 国外研究现状: 在国外,Activiti研究主要集中在以下几个方面: (1)工作流建模:Activiti提供了基于BPMN 2.0标准的建模工具,因此,研究者可以探索如何更好地使用Activiti建模工具来设计工作流程。 (2)工作流引擎:Activiti作为一款工作流引擎,其核心是任务分配和流程控制,因此,研究者可以探索如何使用Activiti提高工作流引擎的性能和可扩展性。 (3)工作流优化:研究者可以探索如何使用Activiti来优化工作流程,以提高效率和质量。 2. 国内研究现状: 在国内,Activiti研究主要集中在以下几个方面: (1)工作流引擎:国内有一些研究者对Activiti工作流引擎进行了研究,包括性能和可扩展性等方面。 (2)工作流建模:国内研究者也对Activiti的建模工具进行了探索,包括如何使用Activiti进行BPMN建模和如何使用Activiti Modeler进行建模等。 (3)工作流应用:国内研究者也开始将Activiti应用于实际业务中,例如,使用Activiti来管理组织内部流程、使用Activiti来优化供应链管理等。 总的来说,Activiti作为一款开源的Java工作流引擎,在国内外都受到了广泛的关注和研究。随着工作流技术的不断发展,Activiti的应用前景也将变得更加广阔。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值