記錄一些Drools的學習資源
- http://www.cnblogs.com/tom-lau/p/6913315.html
- https://www.ibm.com/developerworks/cn/java/j-drools/
- http://blog.csdn.net/lifetragedy/article/details/51143914
- http://www.drools.org.cn/279.html
- http://www.open-open.com/doc/list/173?o=d
- http://dyingbleed.com
- http://blog.csdn.net/wsdc0521/article/details/50371267
- http://blog.csdn.net/lifetragedy/article/details/51143914
- http://www.cnblogs.com/ciade/p/5234791.html
http://blog.csdn.net/timedifier2/article/details/53542172
動態(tài)規(guī)則(template毙石、DB)
http://blog.csdn.net/caicongyang/article/details/52702628
靜態(tài)規(guī)則
KIE的API中有以下的幾個類和接口需要介紹下:
KieServices
該接口提供了很多方法噪舀,可以通過這些方法訪問KIE關于構建和運行的相關對象隐轩,比如說可以獲取KieContainer刻诊,利用KieContainer來訪問KBase和KSession等信息窒百;可以獲取KieRepository對象苗沧,利用KieRepository來管理KieModule等教寂。
KieServices就是一個中心杀狡,通過它來獲取的各種對象來完成規(guī)則構建籍滴、管理和執(zhí)行等操作酪夷。
KieContainer
可以理解KieContainer就是一個KieBase的容器。
KieBase
KieBase就是一個知識倉庫孽惰,包含了若干的規(guī)則晚岭、流程、方法等灰瞻,在Drools中主要就是規(guī)則和方法腥例,KieBase本身并不包含運行時的數(shù)據之類的,如果需要執(zhí)行規(guī)則KieBase中的規(guī)則的話酝润,就需要根據KieBase創(chuàng)建KieSession燎竖。
KieSession
KieSession就是一個跟Drools引擎打交道的會話,其基于KieBase創(chuàng)建要销,它會包含運行時數(shù)據构回,包含“事實 Fact”,并對運行時數(shù)據事實進行規(guī)則運算疏咐。我們通過KieContainer創(chuàng)建KieSession是一種較為方便的做法纤掸,其實他本質上是從KieBase中創(chuàng)建出來
KieRepository
KieRepository是一個單例對象,它是一個存放KieModule的倉庫浑塞,KieModule由kmodule.xml文件定義(當然不僅僅只是用它來定義)借跪。
KieProject
KieContainer通過KieProject來初始化、構造KieModule酌壕,并將KieModule存放到KieRepository中掏愁,然后KieContainer可以通過KieProject來查找KieModule定義的信息,并根據這些信息構造KieBase和KieSession卵牍。
ClasspathKieProject
ClasspathKieProject實現(xiàn)了KieProject接口果港,它提供了根據類路徑中的META-INF/kmodule.xml文件構造KieModule的能力,也就是我們能夠基于Maven構造Drools組件的基本保障之一糊昙。