规则引擎--Drools之规则文件

规则引擎--Drools之规则文件_第1张图片

  • function的使用方法

    构造相关方法,可在rule中构造function并使用,亦可以导入java类中的相关静态方法使用。示例代码如下:

规则文件function.drl

package rules;
import com.songzerong.drools.entity.User;
import function com.songzerong.drools.func.UserRuleFunction.getPassWord;

function String getUserName(User user){
    return user.getUserName();
}
rule "function_in_ruleFile"
  when
     $user:User(userName contains "function")
  then
    System.out.println("在规则文件中定义function,并获取传入的用户名为:"+ getUserName( $user ) );
end

rule "function_not_in_ruleFile"
  when
     $user:User(userName contains "function")
  then
    System.out.println("在java类文件中定义function,并获取传入的密码为:"+ getPassWord($user));
end

UserRuleFunction.java文件内容

package com.songzerong.drools.func;

import com.songzerong.drools.entity.User;

/**
 * @author songzerong
 */
public class UserRuleFunction {

    public static String getPassWord(User user) {
        return user.getPassWord();
    }
}

 

你可能感兴趣的:(规则引擎,其他)