本文主要是介绍规则引擎Drools,基于mysql实现动态加载部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 一、使用
- 1、参考资料
- 2、引包
- 3、优化点
- 参考资料
一、使用
1、参考资料
参考文档:
https://www.cnblogs.com/huan1993/p/16319931.html
https://blog.csdn.net/fu_huo_1993/article/details/124998602
https://gitee.com/huan1993/spring-cloud-parent/tree/master/drools/drools-dynamic-crud-rule
2、引包
gradle引包:
implementation 'org.drools:drools-core:7.74.1.Final'
implementation 'org.drools:drools-compiler:7.74.1.Final'
implementation 'org.drools:drools-templates:7.74.1.Final'
implementation 'org.drools:drools-mvel:7.74.1.Final'
implementation 'org.kie:kie-api:7.74.1.Final'
implementation ('org.kie:kie-spring:7.74.1.Final') {exclude(group: 'org.springframework', module: 'spring-tx')exclude(group: 'org.springframework', module: 'spring-beans')exclude(group: 'org.springframework', module: 'spring-core')exclude(group: 'org.springframework', module: 'spring-context')
}
maven引包:
可以参照大佬写的引(我没试过),或者按照我上面的引入。
3、优化点
1、加一个DroolsManager加载时,从数据源中读取规则,然后依次添加。
2、实际用到的是KieSession,可以添加一个方法:
//根据kiebase 名字获取kiesession
public KieSession getKieSessionBySessionName(String kieBaseName) {KieSession kieSession = kieContainer.newKieSession(kieBaseName + "-session");return kieSession;
}
3、数据库部分没有完整实现,可以考虑实现多种数据源,其实mysql一种就够了。
参考资料
最新版本:8.44.2.FINAL
官方文档:
https://www.drools.org/learn/documentation.html
8版本:https://docs.drools.org/8.44.0.Final/drools-docs/drools/introduction/index.html
7版本:https://docs.drools.org/7.74.1.Final/drools-docs/html_single/index.html
这篇关于规则引擎Drools,基于mysql实现动态加载部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!