开发环境
IDE intellij idea 12
grails-1.3.7
一、安装插件 grails install-plugin drools-gorm 二、加入drools-spring-5.2.0.Final.jar,drools-grid-impl-5.2.0.Final.jar 三、代码 1.conf/spring/resources.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <import resource="drools.xml" /> </beans> 2.drools.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:drools="http://drools.org/schema/drools-spring" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://drools.org/schema/drools-spring http://anonsvn.jboss.org/repos/labs/labs/jbossrules/trunk/drools-container/drools-spring/src/main/resources/org/drools/container/spring/drools-spring-1.0.0.xsd"> <drools:kbase id="kBaseHelloWorld"> <drools:resources> <!--不是<drools:resource type="DRL" source="classpath:com/jsptpd/rjy/zyj/service/Login.drl"/> --> <drools:resource type="DRL" source="classpath:drools/HelloWorld.drl"/> </drools:resources> </drools:kbase> <!--不能用这个,这样是单例,并发有问题--> <!--<drools:ksession id="kSessionHelloWorld" type="stateful" kbase="kBaseHelloWorld"/>--> <bean id="droolsSpringDemo" class="com.drools.demo.spring.DroolsSpringDemo"> <property name="kBaseHelloWorld" ref="kBaseHelloWorld" /> </bean> </beans> 3.DroolsSpringDemo package com.drools.demo.spring import com.drools.demo.main.Message import org.drools.runtime.StatefulKnowledgeSession class DroolsSpringDemo { def kBaseHelloWorld def helloWorld(){ new Thread(new Runnable() { void run() { while (true){ Thread.sleep(100) run() } } }) .start() new Thread(new Runnable() { void run() { while (true){ Thread.sleep(76) run() } } }) .start() new Thread(new Runnable() { void run() { while (true){ Thread.sleep(43) run() } } }) .start() while (true); } private run() { StatefulKnowledgeSession kstateful = kBaseHelloWorld.newStatefulKnowledgeSession() Message message = new Message(); message.setMessage("Hello World"); message.setStatus(Message.HELLO); kstateful.insert(message); kstateful.fireAllRules(); kstateful.dispose(); }}
4.测试 class DemoDroolsSpringTest extends GroovyTestCase{ def droolsSpringDemo public void testSomething() { droolsSpringDemo.helloWorld() } }
HelloWorld.drl文件内容 package com.drools.demoimport com.drools.demo.main.Message; rule "Hello World" dialect "mvel" when m : Message( status == Message.HELLO, message : message ) then System.out.println( message ); modify ( m ) { message = "Goodbyte cruel world", status = Message.GOODBYE }; System.out.println( message ); end rule "Good Bye" dialect "java" when Message( status == Message.GOODBYE, message : message ) then System.out.println( message ); end
相关推荐
通过整合SpringMVC+SpringBoot+Mybatis构建一个可用的基于SpringCloud的微服务工程将上述技术组件逐步落地,让大家看得懂做得出学得会。 00、硅谷学习_SpringBoot_源码、课件 01.硅谷学习_SpringCloud_前提概述 ...
本demo为Spring boot整合shiro,以mybatis plus做dao层交互数据,实现了读取数据库用户数据实现用户登录,权限认证,读取数据库中用户对应的url请求,实现请求的过滤。自定义了relam和过滤器来实现这些功能
除此之外,还通过整合SpringMVC+SpringBoot+Mybatis构建一个可用的基于SpringCloud的微服务工程将上述技术组件逐步落地,让大家看得懂做得出学得会。 00、尚硅谷_SpringBoot_源码、课件 01.尚硅谷_SpringCloud_前提...
NULL 博文链接:https://goodluck-wgw.iteye.com/blog/1766228
本篇文章主要介绍了Spring Boot+Drools规则引擎整合,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
结合前面我们把路由规则写在项目的配置文件中.现在把结合SpringCloud-config 分布式配置中心,让配置文件更加的灵活。使用actuator 手动刷新,后面在说springcloud 消息总线 实现动态刷新配置。
Spring.NET是一个应用程序框架,其目的是协助开发人员创建企业级的.NET应用程序。它提供了很多方面的功能,比如依赖注入、面向方面编程(AOP)、数据访问抽象及ASP.NET扩展等等。Spring.NET以Java版的Spring框架为...
java s2sh三大框架整合的通讯录系统 界面美观 (1) 通信录实现浏览或查找通信录中记录,能够添加,删除,修改记录等。 (2) 用户处于只有登录之后才可以添加,删除,修改记录;如果没有登录只可以查看信息。 (3) 用户...
Spring框架是一系列应用框架的核心,也可以说是整合其他应用框架的基座。同时还是SpringBoot的基础。在当下的市场开发环境中,Spring占据的地位是非常高的,基本已经成为了开发者绕不过去的框架了。它里面包含了...
SpringCloud Alibaba使用(二) - sentinel fallback整合ribbon+openFeign 服务熔断功能 规则持久化.zip
Spring整合Drools Spring Boot整合Drools WorkBench Drools实战 个人所得税计算器 信用卡申请 保险产品准入规则 规则引擎,全称为业务规则管理系统,英文名为BRMS(即Business Rule Management System)。规则引擎的...
包含第一代springcloud全部配置代码,各项详细测试案例。 hystrix: 降级、熔断、限流详细配置;config:加密传输,动态配置刷新等配置;eureka:服务注册中心,各项参数详细配置等
排序规则 9.6.8。JSON模式 9.6.9。流利的模板API 9.7。按实例查询 9.7.1。介绍 9.7.2。用法 9.7.3。示例匹配器 9.7.4。执行一个例子 9.7.5。无类型示例 9.8。减少地图操作 9.8.1。使用示例 9.9。脚本操作 9.9.1。...
spring boot 集成 websocket 来实现页面实时更新前端数据,通知前端来做响应的操作。使用drools来实现规则判断来实现业务逻辑
这是用Java中的spring-boot构建的简单规则引擎。 规则使用纯JavaScript。 Nashorn脚本引擎允许运行时加载和评估规则。指示通过克隆存储库安装应用程序生成并运行应用 $ cd rulesengine $ gradlew bootRun呼叫其余...
2018年Java Activiti6.x 视频整合Spring Boot/JPA/WEB框架实战 01 Activiti介绍与搭建开发环境 02 运行官方例子 03 编写第一个Activiti程序 04 流程引擎配置与服务组件 05 Activiti数据库介绍 06 API(1)...
注意 mapper 配置,因为参数名固定,所以接收参数使用的对象,按照 Spring Boot 配置规则,大写字母都变了带横线的小写字母。针对如 IDENTITY(对应i-d-e-n-t-i-t-y)提供了全小写的 identity 配置,如果 IDE 能自动...
2、服务器验证登录鉴权,如果改用户合法,根据用户的信息和服务器的规则生成 JWT Token 3、服务器将该 token 以 json 形式返回(不一定要json形式,这里说的是一种常见的做法) 4、用户得到 token,存在 ...
如果对drools还不是特别熟悉的,可以看下 《规则引擎Drools 之 初识drools》这篇文章; 本文源码,github 传送门:https://github.com/vincent9309/drools: 系统架构如下: 二、项目目录结构 三、...
RabbitMQ依据指定的转发规则进行消息的转发、缓冲和持久化操作,主要用在多服务器间或单服务器的子系统间进行通信,是分布式系统标准的配置。 spring-cloud-stream-binder-rabbit SubscribableChannel ...