Commit a1d2bdaf by weiguanying

Drools规则引擎说明文档更新

parent 200c5958
package com.example.drools_spring.service; package com.example.drools_spring.service;
import com.example.drools_spring.entity.Calculation; import com.example.drools_spring.entity.Calculation;
import org.drools.core.base.RuleNameEqualsAgendaFilter;
import org.kie.api.KieBase; import org.kie.api.KieBase;
import org.kie.api.runtime.KieSession; import org.kie.api.runtime.KieSession;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -19,9 +20,15 @@ public class RuleService { ...@@ -19,9 +20,15 @@ public class RuleService {
// 个人所得税计算 // 个人所得税计算
public Calculation calculate(Calculation calculation) { public Calculation calculate(Calculation calculation) {
// 会话对象,用于和规则引擎交互
KieSession kieSession = kieBase.newKieSession(); KieSession kieSession = kieBase.newKieSession();
// 将数据提供给规则引擎,规则引擎会根据提供的数据进行规则匹配
kieSession.insert(calculation); kieSession.insert(calculation);
// 激活规则引擎,如果规则匹配成功则执行规则
kieSession.fireAllRules(); kieSession.fireAllRules();
// 通过规则过滤器实现只执行指定规则
//kieSession.fireAllRules(new RuleNameEqualsAgendaFilter("xxxxx"));
// 关闭会话
kieSession.dispose(); kieSession.dispose();
return calculation; return calculation;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment