• 【Activiti-02】 基本操作


    1.创建系统需要的25张数据表;

    配置数据库连接

    activiti.cfg.xml

    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans.xsd">
    
      <bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
    
        <property name="jdbcUrl" value="jdbc:oracle:thin:@localhost:1521:orcl" />
        <property name="jdbcDriver" value="oracle.jdbc.driver.OracleDriver" />
        <property name="jdbcUsername" value="activiti" />
        <property name="jdbcPassword" value="activiti" />
    
        <property name="databaseSchemaUpdate" value="true" />
    
    <!--     <property name="jobExecutorActivate" value="false" /> -->
    
    <!--     <property name="mailServerHost" value="mail.my-corp.com" /> -->
    <!--     <property name="mailServerPort" value="5025" /> -->
      </bean>
    
    </beans>
    import java.util.ArrayList;
    import java.util.List;
    
    import org.activiti.engine.ProcessEngine;
    import org.activiti.engine.ProcessEngineConfiguration;
    import org.activiti.engine.ProcessEngines;
    import org.activiti.engine.RepositoryService;
    import org.activiti.engine.RuntimeService;
    import org.activiti.engine.TaskService;
    import org.activiti.engine.task.Task;
    
    public class Test {
    
        public static void main(String[] args) {
            Test t = new Test();
    //        t.buildProcessEngine();
    //        t.deploy();
    //        t.runTime();
    //        t.getTask();
    //        t.complete();
        }
        
        //获得默认的流程引擎
        ProcessEngine pe = ProcessEngines.getDefaultProcessEngine();
        
        /**
         * #5、完成任务
         */
        public void complete(){
            TaskService taskService = pe.getTaskService();
            List<Task> tasklist = this.getTask();
            taskService.complete(tasklist.get(0).getId());
        }
        /**
         * #4、获得任务
         */
        public List<Task> getTask(){
            List<Task> tasklist = new ArrayList<Task>();
            String  assignee = "liusu";
            TaskService taskService = pe.getTaskService();
            tasklist = taskService.createTaskQuery()
            .taskAssignee(assignee)
            .list();
            for(Task task:tasklist){
                System.out.println(task.getName());
                System.out.println(task.getId());
                System.out.println("-------------");
            }
            return tasklist;
        }
        /**
         * #3、启动一个流程
         */
        public void runTime(){
            String processKey = "myProcess";
            RuntimeService runtimeService = pe.getRuntimeService();
            runtimeService.startProcessInstanceByKey(processKey);
        }
        
        /**
         * #2、部署一个 流程
         */
        public void deploy(){
            RepositoryService repositoryService = pe.getRepositoryService();//获得Service
            repositoryService.createDeployment()//创建部署对象
            .addClasspathResource("bpmn/mainBpmn.bpmn")
            .addClasspathResource("bpmn/mainBpmn.png")
            .name("测试流程")
            .deploy();//部署
            
        }
        
        /**
         * #1、创建流程引擎
         */
        public void buildProcessEngine(){
            //活的流程引擎配置信息
            ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault();
            //创建流程引擎
            processEngineConfiguration.buildProcessEngine();
        }
    }

    运行后、数据库会生成25张数据表

  • 相关阅读:
    二叉树--转换二叉树(leetcode 108,leetcode 109)
    二叉树--层序遍历(leetcode 102
    二叉树--对称二叉树(leetcode 101
    数据库事务隔离
    二叉树--后序遍历的递归和非递归(leetcode 145
    二叉树--中序遍历的递归和非递归(leetcode 94
    二叉树--先序遍历的递归和非递归(leetcode 144
    链表--排序链表(leetcode 148
    接口的调用
    查锁表以及杀进程
  • 原文地址:https://www.cnblogs.com/devan/p/6295149.html
Copyright © 2020-2023  润新知