把流程定义文档部署到jbpm引擎中

2024-03-26 21:58

本文主要是介绍把流程定义文档部署到jbpm引擎中,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

package com.tfy.jbpm.test;


import java.util.List;


import org.jbpm.api.ProcessEngine;
import org.jbpm.api.task.Task;
import org.junit.Test;


import com.tfy.jbpm.base.BaseJbpm;


/**
 * 流程管理
 * 1、把流程定义语言部署到jbpm的引擎中
 * 2、查看流程图
 * 3、删除流程流程定义
 * 4、对流程定义进行查询
 * @author Think
 *
 */
public class PDTest extends BaseJbpm{
/**
* 把流程定义文档部署到jbpm引擎中
* 涉及到的表
*    JBPM4_PROPERTY
*    JBPM4_DEPLOYMENT
*       *  表的含义:描述一次部署
*       *  字段:
*            DBID_:主键   部署ID
*            STATE_:状态  active
*     *    JBPM4_LOB  
*       *  表的含义:流程定义文档在这张表中存储
*       *  在部署的时候,加载几个配置文件,在这个表中就生成几行数据
*       *  字段
*            DBID_:主键
*            DEPLOYMENT_:部署ID
*            NAME_:文件的路径
*       *  说明:
*            可以根据部署ID查询某一个xml文件和图片
*            图片、xml文件与部署是一对一的关系
*    JBPM4_DEPLOYPROP
*       *  表的含义:部署属性表
*/
@Test
public void testDeploy ()
{
processEngine.getRepositoryService()
.createDeployment()
.addResourceFromClasspath("tfy.jpdl.xml")
.addResourceFromClasspath("tfy.png")
.deploy();
}
/**
* 流程实例
* 1、启动流程实例
* 2、完成任务
*  3、各种查询
*      查询没有完成的任务
*      查询已经完成的任务
*  4、整个流程实例非正常结束
* @author Think
*
*/
/**
* 可以根据pdid和pdkey启动流程实例
*  如果是pdkey,那么启动的是最高版本的流程实例
*  涉及到的表
*     JBPM4_EXECUTION
*       *  表的含义:表示正在执行的流程实例
*       *  字段:
*            DBID_:主键
*            ID_:流程实例ID
*            ACTIVITYNAME_:当前流程实例正在活跃的节点
*            PROCDEFID_:流程定义ID
*       *  临时表
*     JBPM4_HIST_PROCINST(process instance)
*       *  表的含义:表示历史的流程实例,当前正在执行的流程实例也在这张表中,但是结束时间(END_为null),状态STATE_为active
*       *  说明:如果整个流程实例结束以后,state_的值为ended
*     JBPM4_TASK
*       *  表的含义:表示正在执行的任务
*       *  字段
*           DBID_:主键、任务ID
*           NAME_:任务的名称
*           ASSIGNEE_:任务的执行人
*       *  说明
*             这个表是一张临时表,只要一个任务结束以后,会从这张表中删除掉
*     JBPM4_HIST_TASK
*       *  表的含义:表示历史的任务,当前正在执行的任务也在该边中,但是结束时间为null,状态state为null
*       *  说明:当一个任务完成以后,这张表中的STATE_的值为completed,结束时间有值了
*     JBPM4_HIST_ACTINST
*       *  表的含义:表示历史的节点  在jbpm中,无论是task,还是state还是其他的点都成为节点,task只是节点的一种
*       *  字段
*          Type:用来标注节点的种类  task
*/
@Test
public void testStartPI(){
processEngine.getExecutionService()
.startProcessInstanceByKey("tfy");
}


/**
* 查询所有的正在执行的任务
*/
@Test
public void TestQueryAllTasks(){
List<Task> taskList=processEngine.getTaskService()
.createTaskQuery()
.list();
for(Task task:taskList){
System.out.println(task.getActivityName());
System.out.println(task.getFormResourceName());
System.out.println(task.getAssignee());
System.out.println(task.getName());
}
}
}

这篇关于把流程定义文档部署到jbpm引擎中的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/849972

相关文章

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

Linux流媒体服务器部署流程

《Linux流媒体服务器部署流程》文章详细介绍了流媒体服务器的部署步骤,包括更新系统、安装依赖组件、编译安装Nginx和RTMP模块、配置Nginx和FFmpeg,以及测试流媒体服务器的搭建... 目录流媒体服务器部署部署安装1.更新系统2.安装依赖组件3.解压4.编译安装(添加RTMP和openssl模块

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

redis群集简单部署过程

《redis群集简单部署过程》文章介绍了Redis,一个高性能的键值存储系统,其支持多种数据结构和命令,它还讨论了Redis的服务器端架构、数据存储和获取、协议和命令、高可用性方案、缓存机制以及监控和... 目录Redis介绍1. 基本概念2. 服务器端3. 存储和获取数据4. 协议和命令5. 高可用性6.

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

浅析如何使用Swagger生成带权限控制的API文档

《浅析如何使用Swagger生成带权限控制的API文档》当涉及到权限控制时,如何生成既安全又详细的API文档就成了一个关键问题,所以这篇文章小编就来和大家好好聊聊如何用Swagger来生成带有... 目录准备工作配置 Swagger权限控制给 API 加上权限注解查看文档注意事项在咱们的开发工作里,API

nginx部署https网站的实现步骤(亲测)

《nginx部署https网站的实现步骤(亲测)》本文详细介绍了使用Nginx在保持与http服务兼容的情况下部署HTTPS,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值... 目录步骤 1:安装 Nginx步骤 2:获取 SSL 证书步骤 3:手动配置 Nginx步骤 4:测

springboot启动流程过程

《springboot启动流程过程》SpringBoot简化了Spring框架的使用,通过创建`SpringApplication`对象,判断应用类型并设置初始化器和监听器,在`run`方法中,读取配... 目录springboot启动流程springboot程序启动入口1.创建SpringApplicat