-
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();
}
}