【入门篇】Activiti

Activiti是一个工作流引擎(框架,组件,jar包),通常activiti引擎需要嵌入到业务系统中去运行。使用专门的建模语言进行定义,业务系统按照预先定义的流程进行相关的执行,实现了业务系统的业务流程由activiti进行管理,兼少业务系统由于流程变更进行系统升级改造的工作量,从而提高系统的健壮性,同时也减少了系统开发维护的成本。

说说自己怎么理解这个东西的把。其实相当于第三方jar包或者插件,和eclipse或者MyEclipse集成后,然后做一些连接设置,从而更好的管理业务流程。积极的应对用户的需求变更,让换需求来的更简单吧。根据自己的理解大致分为以下几步:

第一步:配置activiti到eclipse;

第二步:流程定义,绘制业务流程图,并且设置相关的变量;

第三步:配置activiti数据库;

第四步:流程部署,部署该bpm文件,并且保存生成png或者其他格式的文件,用于后期修改需求或者用户流程查看。

第五步:采用IO操作或者其他操作,读写该文件的变量值从而显示的展示出,工作流到哪一级别。

下面是原理图:


简单的来说一下每个部分的作用:

activiti.cfg.xml:这里面的配置其实就是流程化图像通过xml格式展现出来的,是activiti核心配置文件。为Spring配置文件,配置数据源。

ProcessEngineConfiguration:通过activiti.cfg.xml创建。

ProcessEngine:通过ProcessEngineConfiguration创建。

Service层包括:RepositoryService、TaskService、IdentityService、FormService、RuntmeService、ManagementService、HistoryService。

RepositoryService:activiti的资源管理类,用于流程部署,获取流程部署的资源。

TaskService:任务管理类,操作个人任务,组任务。

IdentityService:用户身份管理类,设置用户、组(角色)、用户和组关系。

FormService:表单管理类,实现activiti中配置表单数据。

RuntmeService:流程运行管理类,用于启动一个流程实例,操作当前运行的流程信息。

ManagementService:引擎管理类,用于activiti运行的监控,给超级管理员使用。

HistoryService:历史管理类,用于操作历史流程信息。

activiti和Spring整合后,直接从Spring容器中获取ProcessEngine及各个service:

	<!-- 工作流引擎配置bean -->
	<bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration">
		<!-- 数据源 -->
		<property name="dataSource" ref="dataSource" />
		<!-- 使用spring事务管理器 -->
		<property name="transactionManager" ref="transactionManager" />
			<!-- 数据库策略 -->
			<property name="databaseSchemaUpdate" value="drop-create" />
			<!-- activiti的定时任务关闭 -->
			<property name="jobExecutorActivate" value="false" />
	</bean>

	<!-- 流程引擎 -->
	<bean id="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean">
		<property name="processEngineConfiguration" ref="processEngineConfiguration" />
	</bean>
	<!-- 资源服务service -->
	<bean id="repositoryService" factory-bean="processEngine"
		factory-method="getRepositoryService" />
	<!-- 流程运行service -->
	<bean id="runtimeService" factory-bean="processEngine"
		factory-method="getRuntimeService" />
	<!-- 任务管理service -->
	<bean id="taskService" factory-bean="processEngine"
		factory-method="getTaskService" />
	<!-- 历史管理service -->
	<bean id="historyService" factory-bean="processEngine"
		factory-method="getHistoryService" />
	<!-- 用户管理service -->
	<bean id="identityService" factory-bean="processEngine"
		factory-method="getIdentityService" />
	<!-- 引擎管理service -->
	<bean id="managementService" factory-bean="processEngine"
		factory-method="getManagementService" />

创建方式:

1、通过ProcessEngine创建service;

2、调用ProcessEngine.getXXX方法获取service。(如果activiti和Spring整合后,可以直接从Spring中获取所需要的service)

评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

女汉纸一枚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值