Drools在执行某规则后,如何停止其他规则继续执行?

2026-05-25 06:240阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计752个文字,预计阅读时间需要4分钟。

Drools在执行某规则后,如何停止其他规则继续执行?

目录

1.背景

2.需求

3.实现方案

1. 通过Fact判断 2. 通过全局变量判断 3. 通过halt方法

4.实现步骤

4.1 文件编写 4.2 运行结果

5.完整代码

1. 背景 2. 在我们开发的过程中,可能遇到...

目录
  • 1、背景
  • 2、需求
  • 3、实现方案
    • 1、通过Fact判断
    • 2、通过全局变量判断
    • 3、通过halt方法
  • 4、实现上述需求
    • 4.1 drl 文件编写
    • 4.2 运行结果
  • 5、完整代码

1、背景

在我们开发的过程中,可能一个场景需要写多个规则,但是某些规则和别的规则又是互斥的关系。即某个规则成立时,不管其余的规则是否成立,其余的规则都不在执行。那么这种场景该如何处理呢?

2、需求

假设我们有三个规则 rule-01rule-02rule-03,当rule-02执行后,那么rule-03必须终止执行。

3、实现方案 1、通过Fact判断

即当rule-02规则执行后,修改Fact中的某个属性,设置规则已执行,后续规则发现是已执行则不在执行规则。

2、通过全局变量判断

在drools中使用全局变量进行判断。

阅读全文
标签:目录

本文共计752个文字,预计阅读时间需要4分钟。

Drools在执行某规则后,如何停止其他规则继续执行?

目录

1.背景

2.需求

3.实现方案

1. 通过Fact判断 2. 通过全局变量判断 3. 通过halt方法

4.实现步骤

4.1 文件编写 4.2 运行结果

5.完整代码

1. 背景 2. 在我们开发的过程中,可能遇到...

目录
  • 1、背景
  • 2、需求
  • 3、实现方案
    • 1、通过Fact判断
    • 2、通过全局变量判断
    • 3、通过halt方法
  • 4、实现上述需求
    • 4.1 drl 文件编写
    • 4.2 运行结果
  • 5、完整代码

1、背景

在我们开发的过程中,可能一个场景需要写多个规则,但是某些规则和别的规则又是互斥的关系。即某个规则成立时,不管其余的规则是否成立,其余的规则都不在执行。那么这种场景该如何处理呢?

2、需求

假设我们有三个规则 rule-01rule-02rule-03,当rule-02执行后,那么rule-03必须终止执行。

3、实现方案 1、通过Fact判断

即当rule-02规则执行后,修改Fact中的某个属性,设置规则已执行,后续规则发现是已执行则不在执行规则。

2、通过全局变量判断

在drools中使用全局变量进行判断。

阅读全文
标签:目录