JBPM入门系列文章:

JBPM4入门——1.jbpm简要介绍

JBPM4入门——2.在eclipse中安装绘制jbpm流程图的插件

JBPM4入门——3.JBPM4开发环境的搭建

JBPM4入门——4.封装流程管理的工具类(JbpmUtil)

JBPM4入门——5.流程定义的发布、查询、删除

JBPM4入门——6.流程实例的创建和执行

JBPM4入门——7.等待节点的单条线手动执行

JBPM4入门——8.等待节点的分支执行

JBPM4入门——9.自动节点单线执行

——————————————华丽分割线————————————————


 以上流程图有三种情况:这样的话我们就不能用之前的三目运算符的方式来做判断了。

现在我们使用decision节点本身的expr属性来做判断!!

流程图的Expression的表达式

注意:如果修改了流程图的话需要重新发布一下该流程图。让它自动寻找最新版本

后台测试代码如下:

package com.test.test;

import java.util.HashMap;
import java.util.Map;
import com.test.util.JbpmOprations;
import com.test.util.JbpmUtil; public class DecisionTest { public static void main(String[] args) {
//发布decision节点的流程定义
JbpmOprations.deploy("jpdl/decision01.jpdl.xml"); Integer score = 44; //流程变量:一般是一个map<String,Object>
Map<String,Object> varMap = new HashMap<String,Object>();
//使用decision的expr属性来做判断的话。本身就是一个流程判断
if(score<60 && score > 0){
varMap.put("tname", "to state2");
}else if(score > 60 && score < 100){
varMap.put("tname", "to state1");
}else{
varMap.put("tname", "to supper student");
} //启动该流程实例:并绑定流程局部变量varMap
JbpmUtil.getExecutionService()
.startProcessInstanceByKey("decision01", varMap);
}
}

以上代码已经设置了score的值为44.按道理的话会走坏学生的那条线。

执行完以上代码后。查看后台数据库表中的值

  • 大小: 42.2 KB
  • 大小: 72.5 KB
  • 大小: 71.4 KB
  • 大小: 72.7 KB

JBPM4之decision节点:2、好学生|坏学生|超级学生的更多相关文章

  1. JBPM4之decision节点:1、好学生 | 坏学生

    JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流程图的插件 JBPM4入门——3.JBPM4开发环境的搭建 JBPM4入门—— ...

  2. JBPM4之decision节点:3、程序猿|菜鸟|攻城狮|牛人

    JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流程图的插件 JBPM4入门——3.JBPM4开发环境的搭建 JBPM4入门—— ...

  3. jbpm系列之五--使用decision节点判断分支情况

    我们在用JBPM做流程的时候,很多时候会遇到需要判断的节点.类似java中的switch,根据不同的状态,跳转到不同的节点. 首先我们定义一个流程信息,jpdl流程图如下 明显的可以看到,在此种情况下 ...

  4. JBPM具体应用之decision节点的使用

    JBPM工作流引擎为我们提供了许多的节点应用,每一个节点都有其不同的作用,其中有四个比较常用的节点,他们分别decision,fork,state和task.在本文中我们先介绍decision节点,余 ...

  5. 【JBPM4】判断节点decision 方法3 handler

    JPDL <?xml version="1.0" encoding="UTF-8"?> <process key="decision ...

  6. 【JBPM4】判断节点decision 方法2 condition

    运用condition计算并判断. JPDL <?xml version="1.0" encoding="UTF-8"?> <process ...

  7. 【JBPM4】判断节点decision 方法1

    JPDL <?xml version="1.0" encoding="UTF-8"?> <process key="decision ...

  8. 【JBPM4】任务节点-任务分配candidate-groups

    此分组的意思是,该任务节点为多个人员,当其中之一完成后,流程就进入下一个节点. JPDL <?xml version="1.0" encoding="UTF-8&q ...

  9. 【JBPM4】任务节点-任务分配swimlane

    swimlane泳道,几个任务受理人相同的任务节点,可以划分为一个泳道 JPDL <?xml version="1.0" encoding="UTF-8" ...

随机推荐

  1. 关于如何使用Navicat(11.1.13) for MySQL如何创建存储过程

    1.ƒ()函数(右键)→新建函数(左键)→过程(选择) 2.会遇到的问题 问题一:因为sql语句默认以;为结束符,所以应该修改结束符,但是这在Navicat(11.1.13) for MySQL中是不 ...

  2. 国内银行CNAPS CODE 查询 苹果开发者,应用内购,需要填写税务相关信息必须的

    https://e.czbank.com/CORPORBANK/QYUK http://weekend.blog.163.com/blog/static/746895820127961346724/

  3. Linux系统下如何禁止ping命令或允许ping命令的方法

    1.禁止pingecho 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all 2.允许ping echo 0 >/proc/sys/net/ipv4/ic ...

  4. Linux(CentOS)文件操作命令

    touch命令 — 功能说明:生成新的空文件或更改现有文件的时间戳. — 命令格式:touch [参数] <文件> … — 常用参数: -a : 只更改访问时间. -m : 只更改修改时间 ...

  5. css 射线实现方法

    一个斜的四边形 .top_ad_out::before { content: ''; position: absolute; z-index: -1; width: 336px; height: 25 ...

  6. 创建git标签【转】

    转自:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137695175857 ...

  7. django 创建数据库表的linux命令

    一旦你觉得你的模型可能有问题,运行 python manage.py validate . 它可以帮助你捕获一些常见的模型定义错误. 模型确认没问题了,运行下面的命令来生成 CREATE TABLE ...

  8. 利用SOLR搭建企业搜索平台 之——配置文件

    运行solr是个很简单的事,如何让solr高效运行你的项目,这个就不容易了.要考虑的因素太多.这里很重要一个就是对solr的配置要了解.懂得配置文件每个配置项的含义,这样操作起来就会如鱼得水! 在so ...

  9. Sales Order Flow Statuses

    OE_ORDER_LINES_ALL.flow_status_code column values execute the below query to see the values. SELECT ...

  10. leetcode:Summary Ranges

    Given a sorted integer array without duplicates, return the summary of its ranges. For example, give ...