工作流JBPM_day01:3-使用JBPM的API添加与执行流程

工作流JBPM_day013-使用JBPMAPI添加与执行流程

流程定义画完得到压缩文件---》部署流程定义--》启动流程实例--》查询我的个人任务列表--》办理任务--》部门经理(总经理)查询、办理--》完成

 导包、配置文件

 

 

 从其他项目拷log4j.properties文件

配置信息

 创建数据库

 

 运行测试类会自动创建表

 

 运行部署流程定义测试类。表中会生成一些数据

 存到服务器数据库中

 

 员工办理任务

 办理好,查看部门经理个人任务列表

 部门经理办理任务

 查看总经理个人任务列表

 总经理办理任务

 完成流程

HelloWorld_API.java

import java.util.List;

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

public class HelloWorld_API {
    //建表
    @Test
    public void createSchema() {    //hbm2ddl.auto-update自动建表
        new org.hibernate.cfg.Configuration()//
        .configure("jbpm.hibernate.cfg.xml")//
        .buildSessionFactory();
    }
    
    private static ProcessEngine processEngine = new Configuration()//
        .setResource("jbpm.cfg.xml")//
        .buildProcessEngine();
    
    // 1, 部署流程定义
    @Test
    public void deployProcessDefintion() {

        processEngine.getRepositoryService()
            .createDeployment()
            .addResourceFromClasspath("helloworld/helloworld.jpdl.xml")//
            .addResourceFromClasspath("helloworld/helloworld.png")//
            .deploy();
    }
    @Test
    // 2, 启动流程实例
    public void startProvessIndtance() {
        processEngine.getExecutionService().startProcessInstanceByKey("helloworld");
    }
    @Test
    // 3, 查询我的个人任务列表
    public void findMyPersonTaskList() {
//        String userId = "员工";
//        String userId = "部门经理";
        String userId = "总经理";
        //查询
        List<Task> taskList = processEngine.getTaskService().findPersonalTasks(userId);
        
        //显示
        System.out.println("===============【" + userId + "】的个人任务列表=============");
        for(Task task : taskList) {
            System.out.println("id=" + task.getId()//
                    + ", name=" + task.getName()//任务名称
                    + ", assignee=" + task.getAssignee());//办理人
        }
    }
    @Test
    // 4, 办理任务
    public void completeTask() {
        String taskId = "30001";
        processEngine.getTaskService().completeTask(taskId);
    }
}

转载于:https://www.cnblogs.com/justdoitba/p/7979401.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值