jbpm4基本用法

  使用JBPM工作流框架首先需要添加JBPM的jar包

  jbpm4基本用法jbpm4基本用法

    添加完包之后需要写配置文件,JBPM使用hibernate作为持久层的框架,所以需要hibernate的配置文件,加上log4j日志的配置以及JBPM自己的配置文件,总共需要3个配置文件。

    log4j.properties

    这里使用正常的log4j配置文件就行

    jbpm.cfg.xml

  

<?xml version="1.0" encoding="UTF-8"?>



<jbpm-configuration>



  <import resource="jbpm.default.cfg.xml" />

  <import resource="jbpm.businesscalendar.cfg.xml" />

  <import resource="jbpm.tx.hibernate.cfg.xml" />

  <import resource="jbpm.jpdl.cfg.xml" />

  <import resource="jbpm.bpmn.cfg.xml" />

  <import resource="jbpm.identity.cfg.xml" />



  <!-- Job executor is excluded for running the example test cases. -->

  <!-- To enable timers and messages in production use, this should be included. -->

  <!--

  <import resource="jbpm.jobexecutor.cfg.xml" />

  -->



</jbpm-configuration>

 

    jbpm.hibernate.cfg.xml

<?xml version="1.0" encoding="utf-8"?>



<!DOCTYPE hibernate-configuration PUBLIC

          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"

          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">



<hibernate-configuration>

  <session-factory>

  

      <!-- 数据库信息 -->

     <property name="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>

     <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>

     <property name="hibernate.connection.url">jdbc:mysql://localhost/jbpm4</property>

     <property name="hibernate.connection.username">root</property>

     <property name="hibernate.connection.password">lvmingyin</property>

     

     <!-- 其他配置 -->

     <property name="hibernate.hbm2ddl.auto">update</property>

     

     <!-- 导入映射文件 -->

     <mapping resource="jbpm.repository.hbm.xml" />

     <mapping resource="jbpm.execution.hbm.xml" />

     <mapping resource="jbpm.history.hbm.xml" />

     <mapping resource="jbpm.task.hbm.xml" />

     <mapping resource="jbpm.identity.hbm.xml" />

     

  </session-factory>

</hibernate-configuration>

到这里,JBPM的配置就基本完成了,接下来就是写代码了。

首先需要建表,使用如下代码自动建表

new org.hibernate.cfg.Configuration().configure(

                "jbpm.hibernate.cfg.xml").buildSessionFactory();

然后就是使用JBPM了

JBPM4工作流程4个步骤

  1.部署流程定义

  2.启动流程实例

  3.查询我的个人任务

  4.办理任务

 

  1.部署流程定义

// 1.部署流程定义

    @Test

    public void deployProcessDefintion() throws Exception {

        processEngine.getRepositoryService().createDeployment()

                .addResourceFromClasspath("process.jpdl.xml")

                .addResourceFromClasspath("process.png").deploy();

    }

  2.启动流程实例

// 2.启动流程实例

    @Test

    public void startProcessInstance() throws Exception {

        processEngine.getExecutionService().startProcessInstanceByKey("test");

    }

 

  3.查询我的个人任务

    // 3.查询我的个人任务列表

    @Test

    public void findMyPersonalTaskList() throws Exception {

        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());

        }

    }

 

  4.办理任务

    // 4.办理任务

    @Test

    public void completeTask() throws Exception {

        String taskId = "30001";

        

        processEngine.getTaskService().completeTask(taskId);

    }

 

 

你可能感兴趣的:(jbpm4)