Activiti工作流详细讲解完整教程.docx

上传人:p** 文档编号:1078322 上传时间:2024-06-29 格式:DOCX 页数:20 大小:94.10KB
下载 相关 举报
Activiti工作流详细讲解完整教程.docx_第1页
第1页 / 共20页
Activiti工作流详细讲解完整教程.docx_第2页
第2页 / 共20页
Activiti工作流详细讲解完整教程.docx_第3页
第3页 / 共20页
Activiti工作流详细讲解完整教程.docx_第4页
第4页 / 共20页
Activiti工作流详细讲解完整教程.docx_第5页
第5页 / 共20页
Activiti工作流详细讲解完整教程.docx_第6页
第6页 / 共20页
Activiti工作流详细讲解完整教程.docx_第7页
第7页 / 共20页
Activiti工作流详细讲解完整教程.docx_第8页
第8页 / 共20页
Activiti工作流详细讲解完整教程.docx_第9页
第9页 / 共20页
Activiti工作流详细讲解完整教程.docx_第10页
第10页 / 共20页
亲,该文档总共20页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《Activiti工作流详细讲解完整教程.docx》由会员分享,可在线阅读,更多相关《Activiti工作流详细讲解完整教程.docx(20页珍藏版)》请在第壹文秘上搜索。

1、value=com.mysql.jdbc.Driver/jdbcUrl为你电脑数据序的UrIJdbcUsername为数据库用户名jdbcPassword为数据库密码2)在main/java书目下创建随意书目和类编写创建ACtiViti数据表方法publicclassCreateTable/*创建流程表*/TeStpublicvoidcreateTable()RepositoryService管理流程定义RuntimeSemce执行管理.包括启动.推动.删除流程实例等操作TaSkServiCe任务管理3.2 RqxwitoryServiceActiviti的仓库服务类。所谓的仓库指流程定义文档

2、的两个文件:bpmn文件和流程图片该service可以用来删除部署的流程定义.3.3 RuntimeService是Activiti的流程执行服务类.可以从这个服务类中获得许多关于流程执行的相关的信息。3.4 TaskService是ACtiViti的任务服务类。可以从这个类中获得任务的相关信息.如当前正在执行的个人待办和用户组待办任务。3.5 HistoryService是Activiti的查询历史信息的类.在一个流程执行完成后.这个对象为我们供应杳询历史信息.可以跟踪流程实例对应全部待办节点的运行状况。3.6 ProcessDefinition流程定义类.可以从这里获得资源文件等。3.7

3、Processinstance代表流程定义的执行实例.当一个部署的流程图启动后.该流程只花一条流程实例数据.但是它的流程任务可以有多个.每个任务对应流程图中相应的流程节点。4.入门HeIIOWOrid程序4.1 创建漉程图方法点击ActivitiTcst项目.在srcmain/java书目下创建一个diagrams书目用来存放流程图在当前项目右键选择ActivitiDiagram流程图输入流程图名称HeIlOWOrld.然后点击OK.4.2 儡建流程图.如下图O4.3 指定流程图名II1.lD和UsefTaek的处理人D选中第个节点.在GeneraI中的name属性中输入当前节点的名称,在Ma

4、inconfig中的ASSignee中输入该节点的处理人.然后以此类推将3个节点的值设置完成。OoMainconfigDocumentationForm1.istenersMultiinstance3eProperties立Problems/Arror1.ogGeneralIdUSCrUSklName酸市消BAsynchronous切ExclusiveIsforcompensation?4.4 将流程图部署到Activiti的数据表中/*“流程部署定义*/TestpublicvoiddeployFlow()Deploymentdeployment=processEngine.getReposi

5、toryService().CreateDeployment().name(helloworld11fl).addClasspathResource(diagramsHelIoWorld.bpmn).addClasspathResource(,diagramsHelloWorld.png).deploy();System.out.printIn(deployment.getld();System.out.printIn(deployment.getName();启动完成后在act_re_deployment流程部署表和act_re_procdef流程定义表中会彳对应的数据信息4.5启动流程实例

6、其中runtimeScrvice.startProcessInstanceByKcy(HelloWorldKcy);中的HelloWorldKey对应流程图中的ID值,在数据表中对应act_re_procdef流程定义表中的key字段/*查谒流程定义*/TestpublicvoidfindProcessDefintion()1.istlist=this.processEngine.getRepositoryServi0)for(ProcessDefinitionpd:list)System.out.println(流程定义ID:,+pd.getld();碗定削key+魅+用System.out

7、.PrintIn(濡理定义B称:+pd.getName();/JlEhellowor1System.out.println(流理定义的key:+pd.getKey();/时应流想SXml文件SySteE.out.println(流程被的版本:”+pd.getVersion();当潦脏义的卜System.out.Println(资源名称bpmn文件:,+pd.getResourceName();System.out.PrintIn(奥源名称pr9件:+pd.getDiagramResourceName(System.out.pritln(s5SID:+pd.getDeploymentId();S

8、ystem.out.println(#);)2)删除流程定义/*田馀程定义*/TeStpublicvoiddeleteProcessDefinition()RepositoryServicerepositOryService=this.processEngine.getReposito/“只蝴艮争没有启动程的谏程定义,如果流程启动则帔异常*/repositoryservice.deleteDeployment(15001);*豚:.充程定义.ID力海/*“删除流亡定义,包括启功过的流程*/repositoryservice.deleteDeployment(,15l,true);粗降鼾疑义,猊

9、我册照MiSystem.out.printIn();)6.1 班艇狂D设置流程变量彳1多种方式.可以在流程启动.和任务执行的时候设置a启动流程的时候设置Stringkey”流程图IeT;Mapmap=newHashMap();map.put(id,1);map.put(user,newPerson();runtimeservice.StartProCeSSlnStanCeByKey(key,map);b.通过taskService或者runtimeService设置Properties23;品Problems*AntVError1.og第JUnitQConsole1.abelwidth(5O-

10、5)General24MainconfigSkipexpressionDocumentationUstenersCondition!(message=f3S)点击一条连线.在Mainconfig中的Condition属性值中设置$;mcssage=同意,.另外一条线设置为$message=不同意,.然后在代码中设置对应流程变盘值。见工程操作9 .并行网关十字图标对应图标中的ParallelGateway并行网关不须要指定连线的表达式.当流程流转到并行任务时会动身多个任务.当多个任务完成后在会将流程流转到一个节点见工程操作10 .个人任务的三科指定方式10.1 在Assignee中指定任务详细的

11、处理人ZjPropertiesS3J-Problems*AntQError1.09JUnitQConsoleGeneralAssignee5KMainconfigDocumentationCandidateuse.maseparated)FormCandidategro.maseparated)listenersFormkeyMultiinstance10.2 在AsSignee中指定任务的处理人或角色如fOProperties区GeneralMainconfig11-Problems桑Ant勿Errorlog11*JUnit日ConsoleAssigneeSuscrld)Candidateuse.maseparated)DocumentationForm1.isteners-.Candidategro.maseparated)Formkey当指定ASSignee为个变量值后须要在代码中设置对应的处理人.比如在启动的时候设置USerld的值TeStpublicvoidflowStart2()RuntimeServiceruntimeService=processEngine.getRuntimeService()f用key每脚,赛最询系程版本义国MapString,Objectvariables=newHashMap

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > Java

copyright@ 2008-2023 1wenmi网站版权所有

经营许可证编号:宁ICP备2022001189号-1

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!