Tag: 业务规则

在java中创建一个简单的规则引擎

我正在探索用Java创建简单业务规则引擎的不同方法。 我需要向客户端提供一个简单的webapp,让他配置一堆规则。 规则库的示例可能如下所示: 这是一个例子: IF (PATIENT_TYPE = “A” AND ADMISSION_TYPE=”O”) SEND TO OUTPATIENT ELSE IF PATIENT_TYPE = “B” SEND TO INPATIENT 规则引擎非常简单,最终操作可能只是两个操作中的一个,发送给住院病人或门诊病人。 表达式中涉及的运算符可以是=,>,<,!= ,表达式之间的逻辑运算符是AND, OR and NOT 。 我想构建一个Web应用程序,用户将在textarea中的小脚本中编写,我会评估表达式 – 这样,业务规则用简单的英语解释,业务用户可以完全控制逻辑。 从我到目前为止所做的研究中,我遇到了ANTLR并编写了自己的脚本语言作为解决这个问题的可能选项。 我没有探索像Drools规则引擎这样的选项,因为我觉得这可能是一种过度杀伤力。 你有解决这类问题的经验吗? 如果是的话,你是怎么做到的?