资源描述
,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,JBPM4.4,讲稿,Jbpm,开发,web,工程,Jbpm,开发,web,工程,1,、,JBPM,的概念。,2,、安装,JBPM,设计器。,3,、,JBPM,的流程案例。,JBPM,的概念,JBPM,,全称是,Java Business Process Management(,业务流程管理,),,它是覆盖了业务流程管理、,工作流,、服务协作等领域的一个开源的、灵活的、易扩展的可执行流程语言框架。,jBPM,是公开源代码项目。,JBPM,定义了它自己的,JBoss jBPM Process definition language (jPdl),。,jPdl,认为一个业务流程可以被看作是一个,UML,状态图,。,jPdl,就是详细定义了这个状态图的每个部分,如起始、结束状态,以及状态之间的转换,通过图型化的流程定义,直观地描述业务流程。,jBPM,的另一个特色是它使用,Hibernate,来管理它的数据库。,Hibernate,是目前,Java,领域非常流行的一种数据存储层解决方案,只要是,Hibernate,支持的数据库,,jBPM,也就支持。通过,Hibernate,,,jBPM,将数据的管理职能分离出去,自己专注于业务逻辑的处理。,JBPM,的概念,1,、下载,jbpm4.4,压缩包,.,地址:, Configuration Center,进入,software,add site,点击,Add from Archive File,,选择,jbpm-4.4installsrcgpd jbpm-gpd-site.zip,,,name,输入,jbpm4.4,。此时请务必断网,选择没有,Source,的项,更新。,3,、更新完成后,进入,MyEclipse,的,Window/Preferences/Jboss JBPM/Runtime Locations,,添加,jbpm-4.4,。,4,、请务必检查现在的,MyEclipse,是否可以创建,web Project,。,说明:安装,JBPM,设计器后,打开,*.jpdl.xml,文件时会以,JBPM,的,UI,视图方式打开。如下所式:,安装,JBPM,设计器,安装,JBPM,设计器,请假工作流程,流程有,1,、员工请假,2,、经理批准或驳回,3,、若请假天数大于,3,天,需另请老板审批,4,、流程结束。,JBPM,的流程案例,Leave.jpdl.xml, 3 ? ,老板审批, : ,结束, g=475,128,48,48 name=exclusive1,JBPM,的流程案例,JBPM,的流程案例,员工请假,ProcessEngine processEngine = Configuration.getProcessEngine();,RepositoryService repositoryService = processEngine.getRepositoryService();,ExecutionService executionService = processEngine.getExecutionService();,TaskService taskService = processEngine.getTaskService();,String,username = (String) session.getAttribute(username);,List pdList = repositoryService.createProcessDefinitionQuery().list();,List piList = executionService.createProcessInstanceQuery().list();,List taskList = taskService.findPersonalTasks(,username);,JBPM,的流程案例,经理审批,经理审核,申请人:,请假时间:,请假原因:,经理审批,-,批准与驳回,String taskId = request.getParameter(taskId);,String result = request.getParameter(result);,result =,new String(result.getBytes(ISO-8859-1), UTF-8);,taskSpleteTask(taskId, result);,response.sendRedirect(index.jsp);,JBPM,的流程案例,JBPM,的流程案例,老板审批,老板审核,申请人:,请假时间:,请假原因:,老板审批,ProcessEngine processEngine = Configuration.getProcessEngine();,TaskService taskService = processEngine.getTaskService();,String taskId = request.getParameter(taskId);,taskSpleteTask(taskId);,response.sendRedirect(index.jsp);,JBPM,的流程案例,谢谢!,Jbpm4,讲稿结束,
展开阅读全文