java规则引擎
<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>
很多朋友都想知道java规则引擎是什么?下面就一起来了解一下吧~
一、简介:
Drools就是为了解决业务代码和业务规则分离的引擎。Drools 规则是在 Java 应用程序上运行的,其要执行的步骤顺序由代码确定,为了实现这一点,Drools 规则引擎将业务规则转换成执行树。
二、特性:
优点:
1、简化系统架构,优化应用
2、提高系统的可维护性和维护成本
3、方便系统的整合
4、减少编写“硬代码”业务规则的成本和风险
三、使用方式:
(1)Maven 依赖:
<dependencies> <dependency> <groupId>org.kie</groupId> <artifactId>kie-api</artifactId> <version>6.5.0.Final</version> </dependency> <dependency> <groupId>org.drools</groupId> <artifactId>drools-compiler</artifactId> <version>6.5.0.Final</version> <scope>runtime</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency></dependencies>
(2)新建配置文件/src/resources/META-INF/kmodule.xml
<?xml version="1.0" encoding="UTF-8"?><kmodule xmlns="http://jboss.org/kie/6.0.0/kmodule"> <kbase name="rules" packages="rules"> <ksession name="myAgeSession"/> </kbase></kmodule>
(3)新建drools规则文件/src/resources/rules/age.drl
import com.lrq.wechatDemo.domain.User // 导入类dialect "mvel"rule "age" // 规则名,唯一 when $user : User(age<15 || age>60) //规则的条件部分 then System.out.println("年龄不符合要求!");end
测试用例:
/** * CreateBy: haleyliu * CreateDate: 2018/12/26 */@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations = {"classpath*:applicationContext.xml"})public class TestUser { private static KieContainer container = null; private KieSession statefulKieSession = null; @Test public void test(){ KieServices kieServices = KieServices.Factory.get(); container = kieServices.getKieClasspathContainer(); statefulKieSession = container.newKieSession("myAgeSession"); User user = new User("duval yang",12); statefulKieSession.insert(user); statefulKieSession.fireAllRules(); statefulKieSession.dispose(); }}
-
微博怎么显示手机型号,微博如何显示手机型号
微博怎么显示手机型号:1、首先需要点击手机桌面中的微博。2、然后再点击屏幕右下方的我的。3、然后再点击屏幕上方的设置图标。4、然后再点击会员专属设置。5、然后再点击微博来源。6、最后选择想要显示的手机型号就可以了。...
-
信用卡的钱怎么转到微信,信用卡的钱转到微信方法
1、信用卡需要先办理现金转出业务,先将额度转账到银行卡里,再通过银行卡充值的方法来转到微信钱包中。因此,信用卡无法直接将额度转账到微信里,中间必须通过银行卡才可以完成。信用卡绑定在微信中只可以用于消费,转账、发红包都是不支持的。2、另外,信用卡绑定了微信...
-
载人火箭顶部有一个尖顶叫什么塔
1、载人火箭顶部有一个尖顶叫逃逸塔,又名逃生塔,装在飞船顶端,从远处看像是火箭上的避雷针,与一般火箭圆锥形的头部很不相同。2、由塔架、逃逸发动机和分离发动机(均为固体火箭发动机)组成,发生紧急情况时,逃逸发动机迅速点火,使航天员座舱(返回舱)与固体火箭分离,迅速脱离...
-
苹果手机怎么缩图
智能手机的拍照功能越来越好,拍出来的图片也越来越清晰,用手机来记录生活中的点滴已成为了人们的日常习惯,而平时也会用手机对图片进行一些简单的处理,那么,苹果手机要怎么缩小图片尺寸呢?苹果手机图片尺寸可以通过邮件来进行调整。打开苹果手机,在相册中选择需要调整...