首页 > 代码库 > 以Drools5.5为例说明“规则引擎在业务系统中应用”---规则引擎与业务系统交互

以Drools5.5为例说明“规则引擎在业务系统中应用”---规则引擎与业务系统交互

一、重要概念

Fact:是指在Drools规则应用当中,将一个普通的JavaBean插入到规则的WorkingMemory当中后的对象。

规则可以对Fact对象进行任意的读写操作,当一个JavaBean插入到WorkingMemory当中变成Fact之后,Fact

对象不是对原来的JavaBean对象进行Clon,而是原来JavaBean对象的引用。规则在进行计算的时候需要用到应用系统当中的数据,这些数

据设置在Fact对象当中,然后将其插入到规则的WorkingMemory当中,这样在规则当中就可以通过对Fact对象数据的读写,从而实现对应用数据的读写操作。一个Fact对象通常是

一个具有getter和setter方法的POJO对象,通过这些getter和setter方法可以方便的实现对Fact对象的读写操作,所以我们可以简单的把Fact对象理解为规则与应用系统数据交互的桥梁或通道。

从中知道两条重要信息:

1.在WrokingMemory中对业务对象数据的操作,直接返回到应用系统。

2.业务类的定义需要有get/set方法。

 

二、Drools与应用系统交互

1.应用系统连接DB

2.传递DB数据对象至Drools

3.Drools处理业务

4.Drools返回结果

见代码列表

1.代码

2.代码

3.代码

4.代码

5.代码

6.代码

7.代码

8.代码

9.代码

以Drools5.5为例说明“规则引擎在业务系统中应用”---规则引擎与业务系统交互