条件组件
在实际业务中,往往要通过动态的业务逻辑判断到底接下去该执行哪一个节点
<chain name="chain1">
<then value="a,c(b|d)"/> <!-- c是路由节点,根据c里的逻辑决定路由到b节点还是d节点,可以配置多个 -->
<then value="e,f,g"/>
</chain>
利用表达式可以很方便的进行条件的判断
c节点是用来路由的,被称为条件节点,这种节点需要继承NodeCondComponent
类
需要实现方法processCond
,这个方法需要返回String
类型,就是具体的结果节点
@LiteflowComponent("e")
public class ECmp extends NodeCondComponent {
@Override
public String processCond() throws Exception {
System.out.println("Ecomp executed!");
return "g";
}
}
提示
从v2.6.0开始,新增了@LiteflowComponent
标签,它是继承于Spring的@Component
标签的,所以从作用上来说,和@Component
标签并没有什么区别,但是@LiteflowComponent
新增加了name
属性,用于给组件起别名,在打印调用链的时候会体现。具体请查看步骤打印章节,新版本开始,推荐大家使用@LiteflowComponent
,当然@Component
也同样可以继续沿用。
帮助我们改善此文档 (opens new window)
上次更新: 2022/10/07, 00:22:18