08 Drools Workbench 構建規則併發布Maven倉

02 Drools Workbench 構建規則併發布Maven倉

1:登錄之後,選擇design

2:新建一個項目 Add Project ,輸入名字和描述,例子:AgeHandler

3:進入項目,構建規則

4:點擊“Add Asset”

填寫數據對象名稱(就是java類的名字),軟件包我一般選擇com.myteam

5:添加Student屬性名和屬性類型

點擊右上角的保存;

回退到ageHandler,已經創建了Student對象

6:創建DSL文件,點擊“Add Asset”,選擇“DRL文件”

編寫規則如下:

 

 

package com.myteam;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import com.myteam.Student;

rule "AgeHandlerRule"

 salience 100

 lock-on-active true

 when

 $queryParama : Student(age >=18)

 then

 final Logger LOGGER = LoggerFactory.getLogger("Infer Adult 規則引擎") ;

 LOGGER.info("成年人");

 delete($queryParama);

end

點擊保存,規則新建完成;

7:修改Drools Workbench的Maven倉地址

根據自己的Maven地址,配置環境變量新建 M2_HOME ,E:\apache-maven-3.6.1 

一開始我的沒有生效,重啓電腦,才生效的;啓動之後,在項目中Setting確認一下;

注意-Maven的settings.xml中,添加了 <localRepository> E:\respository</localRepository>

8:構建併發布 Build Deploy

查看Drools Workbench的 Drools-tomcat路徑\bin\repositories\kie\global ,已存在

找到Maven對應的倉respository地址,查看,已經構建成功

連接直接訪問:

http://localhost:8080/kie-drools-wb/maven2/com/myteam/excepHandler/1.0.0/ageHandler-1.0.0.jar

9:就可以在項目的POM中去引用了

Maven+Drools開發是在項目中新建FACT參數對象和DRL規則文件,

Maven+Drools Workbench則是:引用Workbench根據Jar(包含FACT對象,DRL規則文件)打好的Pom,發佈到Maven倉庫中,項目中直接通過Pom引入,通過kieSession調用規則;

 

10:拓展

Maven引用Drools Workbench倉 代碼很簡單

代碼地址(裏面有些沒用的代碼)

鏈接:https://pan.baidu.com/s/1N8n4Fm2X0yLFfKeAzYZh4Q 提取碼:0u99

(1):註釋掉之前RuleEngineConfig的代碼,RuleEngineConfig是引入本地規則的引擎配置

(2):新建DroolsAutoConfig類,

與上面相呼應

 

其他的見代碼


 

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