Drools Rule Engine 初探

最近忽然間被要求要研究一下Drools Rule Engein,至於Drools是什麼東西在此就 不多說廢話了。本篇會稍微介紹一下如何使用Java驅動一個簡單的Drools範例。

這篇範例的程式碼可以從這裡下載:範例程式碼下載

事前準備

當然系統必須要有JDK,並且此範例會使用Gradle當作建構 管理系統。

專案建立

首先先創一個空的Gradle專案修改 build.gradle 檔案。首先在 repositories 的部份加入JBoss自己的repo網址。因為某些Drools的相依在Maven的Central抓不到。修改完後 會長這樣:

接著在 dependencies 中加入相依

寫一個基本的範例

接下來就開始寫範例了,首先在這裡用Drools的語法寫一個drl檔來定義Rule。並將這個drl檔 放在Resources目錄底下。至於Drools的語法以後再來慢慢談這部份。

這drl檔中有兩條規則:

  • 如果Message物件的狀態是Hello,則印出Message中的message。接著將Meassage物件的 message設成”Goodbye world”。
  • 如果Message物件的狀態是GOODBYE,則印出Message中的message。

其中第三行有一段

import org.enoir.droolstest.Message

這是為了讓Drools知道Message實際上是Java的哪個Class.

接下來要先創一個Message的Class。

接著在程式進入點開始跑這流程吧。

接著應該就可以看到以下輸出

Hello World Goodbye world

就先介紹到這,有空再來談談其他細節。


Originally published at blog.enoir.org on October 27, 2015.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.