@Slf4j
public class RuleMatchUtil {

private final static ExpressRunner runner = new ExpressRunner();

public static boolean execute(Map<String, Object> map, String rule) {

DefaultContext<String, Object> context = new DefaultContext<>();

Iterator<Map.Entry<String, Object>> it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, Object> entry = it.next();
context.put(entry.getKey(), entry.getValue());
}

boolean rs;
try {
rs = (Boolean) runner.execute(rule, context, null, true, false);
} catch (Exception e) {
return false;
}
return rs;
}
}
posted on 2023-02-20 10:30  yang希军  阅读(82)  评论(0)    收藏  举报