【Drools-開源業務規則引擎】入門實例(含源碼)


該實例轉自:http://blog.csdn.net/quzishen/article/details/6163012

便於理解的應用實例1:

現在我們模擬一個應用場景:網站伴隨業務產生而進行的積分發放操作。比如支付寶信用卡還款獎勵積分等。

發放積分可能伴隨不同的運營策略和季節性調整,發放數目和規則完全不同,如果使用硬編碼的方式去伴隨業務調整而修改,代碼的修改、管理、優化、測試、上線將是一件非常麻煩的事情,所以,將發放規則部分提取出來,交給Drools管理,可以極大程度的解決這個問題。

(注意一點的是,並非所有的規則相關內容都建議使用Drools,這其中要考慮系統會運行多久,規則變更頻率等一系列條件,如果你的系統只會在線上運行一周,那根本沒必要選擇Drools來加重你的開發成本,java硬編碼的方式則將是首選)

我們定義一下發放規則:

積分的發放參考因素有:交易筆數、交易金額數目、信用卡還款次數、生日特別優惠等。

定義規則:

// 過生日,則加10分,並且將當月交易比數翻倍后再計算積分

// 2011-01-08 - 2011-08-08每月信用卡還款3次以上,每滿3筆贈送30分

// 當月購物總金額100以上,每100元贈送10分

// 當月購物次數5次以上,每五次贈送50分

// 特別的,如果全部滿足了要求,則額外獎勵100分

// 發生退貨,扣減10分

// 退貨金額大於等於100,扣減100分

根據這些規則,我們讓Drools自動為我們計算出為某個特定用戶發放的積分數為多少。

 

源碼:https://github.com/XBWer/DroolsDemo

 


    另外舉個例子——QQ等級加速

根據一系列的加速規則進行加速。

image


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM