推广 热搜: page  关键词  红书  链接  搜索  获取  哪些  数据  数据分析  服务 

规则引擎与业务校验

   日期:2024-12-27     作者:3vy8j    caijiyuan   评论:0    移动:https://sicmodule.kub2b.com/mobile/news/11554.html
核心提示:定义规则接口 规则实现 规则组(可以根据业务场景 定义规则组) 规则引擎,并发执行多个规则或者串行执行

定义规则接口

规则实现

规则组(可以根据业务场景 定义规则组

规则引擎,并发执行多个规则或者串行执行,通过Context上下文,将每个规则执行的结果放到上下文中

可以使用流程引擎,支持规则的复用

class RuleContext{

List<RuleResult> ruleResults;

}

class RuleResult{

private boolean pass;

private String ruleName;

private Strng errorCode;

}

interface Rule{

String name();

boolean before( RuleContext ruleConetxt)

RuleResult execute(RuleContext ruleConetxt)

}

enum RuleGroup{

List<Rule> rules;

}

interface RuleEngine{

List<RuleResult> fire(RuleContext ruleConetxt,List<String> ruleName);

}

class RuleEngineImpl imlements RuleEngine{

List<RuleResult> fire(RuleContext ruleConetxt,List<String> ruleNames){

//通过spring容器根据ruleNames 获取所有的实例

然后可以使用并发框架执行,将所有的具体校验业务放到具体的规则实现中

然后将规则执行结果放到RuleContext中

}

}

针对一些规则校验,商户签约,商品等一些属性规则校验,可以把具体的规则当作基础能力

本文地址:https://sicmodule.kub2b.com/news/11554.html     企库往 https://sicmodule.kub2b.com/ , 查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类最新资讯
0相关评论

文章列表
相关文章
最新动态
推荐图文
最新资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号