Drools規則引擎-.drl文件的規則語法

echo編輯整理,歡迎轉載,轉載請聲明文章來源。歡迎添加echo微信(微信號:t2421499075) 交流學習。


上一章我們講了Drools的入門,可能很多人看到.drl的規則文件的時候,一臉矇蔽,本章我們來講一下規則引擎對應的規則語法

先來看上文中用到的規則文件

package com.echo.drools.dto
import com.echo.drools.dto.User
dialect "java"

rule "address eq beijing"
    when
        $user: User(address == "北京")
    then
         System.out.println($user.getName() + "是個北漂");
    end

rule "address eq shanghai"
    when
        $user: User(address == "上海")
    then
         System.out.println($user.getName() + "是個上漂");
    end

Drools的基礎語法

關鍵字 含義
package 包路徑。建議該路徑寫我們的邏輯代碼路徑
dialect 語言,指定目前系統語言
import 導入規則文件需要使用到的外部變量,和Java的引入一樣
rule 規則體,以rule開頭,以end結尾。後面一般會跟一隻字符串的值,建議字符串的值寫規則名稱,或者描述什麼規則
when 條件,這裏如果爲空,則表示eval(true)
then 符合條件之後執行的邏輯
變量名 以$符號開始後面跟我們Java中的對象

部分語法補充

  • 註釋的使用,單行// 多行/**/
  • 單個drl文件可以書寫多個規則
  • 條件允許爲空

更多語法

後面用到在不斷補充

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章