首页 > 其他分享 >drools_10_function

drools_10_function

时间:2022-10-30 11:09:27浏览次数:111  
标签:function drools name 10 printInfo sample import com

在drl文件定义function

在drl规则文件中可定义函数, 这些函数可以在规则中被使用.
示例:

package com.sample.rules

import com.sample.Order;

function void printInfo(String name){
System.out.println("name: "+name) ;
}

rule "test"
when
$order:Order()
then
printInfo($order.getName()) ;
end

引入java的静态方法

上述 function 其实也可以使用java 静态方法代替, 在使用之前需要先用 import funtion 引入到规则文件中.

import function somePackage.SomeHelper.someFunction;

java 静态方法示例:

package com.sample;
public class SomeHelper{
public static void printInfo(String name){
System.out.println("name: "+name) ;
}
}

drl 示例:

package com.sample.rules

import com.sample.Order;
import function com.sample.SomeHelper.printInfo;

rule "test"
when
$order:Order()
then
printInfo($order.getName()) ;
end

参考

Drools规则描述语言快速手册 ​​http://holbrook.github.io/2012/12/06/rule_language.html​



标签:function,drools,name,10,printInfo,sample,import,com
From: https://blog.51cto.com/u_15585381/5807410

相关文章

  • drools_09_drools_helper
    RHS中的drools对象在RHS中我们可以使用drools对象,该对象是KnowledgeHelper接口的一个实例,它是在rule被执行时被自动注入.KnowledgeHelper接口的官方文档:​​​......
  • drools_07_macro_functions
    delete()和retract()宏函数delete()用于在ruleRHS中将对象从工作内存中删除,retract()函数有同样的作用,不过已经被标记为废弃状态.insert()宏函数insert()用于在rul......
  • leetcode102-二叉树的层序遍历
    102.二叉树的层序遍历有两种实现方法。第一种是递归,第二种是队列实现。第一种是看了别人的代码写出来的,第二种是自己写的。这道题的不能直接把遍历得到的数字直接塞进res......
  • HCIA-ICT实战基础10-广域网技术PPP
    HCIA-ICT实战基础-广域网技术PPP目录早期广域网技术概述PPP协议原理与配置1早期广域网技术概述1.1什么是广域网广域网是连接不同地区局域网的网络,通常所覆盖的范......
  • 10月心得体会分享
    这个月继续学习了Linux,学到了磁盘分区,挂载挂载是Linux文件系统中很重要的概念,除了根文件系统,其他所有文件系统都要先挂载到根文件系统中的某个目录之后才能访问。Linux无......
  • javascript:监控video全屏时取消静音(chrome 107.0.5304.87)
    一,js代码:<html><head><metacharset="utf-8"/><title>测试</title></head><body><divstyle="width:50%;height:100%;float:left;margin-left:-0.3px;pos......
  • 【WC2010】重建计划(分数规划+长链剖分)
    长链剖分因为有很多巨佬只是讲了一下大致的做法,并没有详细地解释如何维护,所以就有了这篇题解。巨佬们都不屑于详细写,我太弱了/kk首先先对原树进行长链剖分。先讲一些定......
  • 【USACO10JAN】Cheese Towers S 奶酪塔 (背包dp)
    一种思路奇特的做法。看到题目容易联想到背包dp,因为看上去很像。但是我们并不知道上面有没有大奶酪。所以我们不妨倒过来看,从上往下加奶酪。设\(dp(i,1/0)\)表示当前......
  • Windows 10 桌面版的 OEM 部署
    Windows10桌面版的OEM部署已准备好构建并测试Windows10台式电脑?本实验演示制作和部署Windows映像的步骤。我们将演示如何使用工具和命令设置端到端部署。可以......
  • 2022-2023 20221410《计算机基础与程序设计》第九周学习总结
    学期2022-2023学号20221410w《计算机基础与程序设计》第九周学习总结作业信息计算机基础与程序设计](https://edu.cnblogs.com/campus/besti/2022-2023-1-CFAP))||-- ......