kie-api介绍和使用

摘要:
通常为kmodule。xml用于表示KieModuleModel:kmodule xml文件的java表示可以通过程序代码构建,而不是添加xml文件。KieFileSystem:一个完整的文件系统,包括资源和组织结构。KieBuilder:将所有规则文件添加到KieFileSystem后,可以通过将KieFile系统传递给KieBuild来构建虚拟文件系统。

参考:KIE

kie在drools jbpm uberfire里广泛被使用,下面对kie-api中的几个重要组件做下简单介绍

maven依赖
<dependency>
<groupId>org.kie</groupId>
<artifactId>kie-api</artifactId>
<version>6.0.2.Final</version>
</dependency>

几个组件

KieServices:kie整体的入口,可以用来创建Container,resource,fileSystem等

KieContainer: KieContainer就是一个KieBase的容器,可以根据kmodule.xml 里描述的KieBase信息来获取具体的KieSession
KieBase: KieBase就是一个知识仓库,包含了若干的规则、流程、方法等,在Drools中主要就是规则和方法,KieBase本身并不包含运行时的数据之类的,如果需要执行规则KieBase中的规则的话,就需要根据KieBase创建KieSession
KieSession:KieSession就是一个跟Drools引擎打交道的会话,其基于KieBase创建,它会包含运行时数据,包含“事实 Fact”,并对运行时数据事实进行规则运算

KieModule:是一个包含了多个kiebase定义的容器。一般用kmodule.xml来表示

KieModuleModel:是kmodule.xml 文件的java表示,可以不用添加xml文件而是通过程序代码的方式来构建,
KieFileSystem:一个完整的文件系统,包括资源和组织结构 

KieBuilder:当把所有的规则文件添加到KieFileSystem中后,通过把KieFileSystem传递给一个KieBuilder,可以构建出这个虚拟文件系统。其中有个buildAll()方法,会在构建好虚拟文件系统后,自动去构建KieModule

KieRepository:是一个KieModule的仓库,包含了所有的KieModule描述,用一个ReleaseId做区分

KieResources:是一个定义了如何获取资源的工厂,包括url,classpath,filesystem等

kiemodule.xml大概是一个样子大概如下的xml:

<kmodule xmlns="http://jboss.org/kie/6.0.0/kmodule">
 <kbase name="rules" packages="rules">
 <ksession name="ksession-rules"/>
 </kbase>
 <kbase name="dtables" packages="dtables">
 <ksession name="ksession-dtables"/>
 </kbase>
 </kmodule>
 kbase name:名字唯一标示
packages:资源文件所在的目录
 ksession name:唯一标识
原文地址:https://www.cnblogs.com/yuebintse/p/5768052.html?utm_source=itdadao&utm_medium=referral

免责声明:文章转载自《kie-api介绍和使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇LIS系统通讯程序原理与实现PL/SQL Developer导入导出Oracle数据库方法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

JIRA数据库切换(HSQL Database到MySQL)

没试过的版本,但是看着靠谱: 注:如果你之前配置过hsql版本,这次修改mysql数据操作会导致配置数据丢失,所以请注意备份 一、 创建名为jiradb的mysql数据,编码格式为utf-8 二、修改jira配置文件confserver.xml的数据库配置部分如下 <Resource name="jdbc/JiraDS" auth="Contain...

下载和使用 Open XML PowerTools

安装 Open XML SDK 2.5 首先,需要安装 Open XML SDK 2.5 ,从这个地址下载安装程序:http://www.microsoft.com/en-in/download/details.aspx?id=30425,下载 2.5M 的 OpenXMLSDKV25.msi,并执行安装程序。 下载 Open XML Power Tool...

android浮动搜索框

android浮动搜索框的配置比较繁琐,需要配置好xml文件才能实现onSearchRequest()方法。 1.配置搜索的XML配置文件​,新建文件searchable.xml,保存在res/xml文件夹中。 1 <?xml version="1.0" encoding="UTF-8"?> 2 3 <searchable androi...

Java解析XML

xml报文 <?xml version='1.0' encoding='utf-8'?> <bookstore> <book id='1'> <name>冰与火之歌</name> <author>乔治马丁</author>...

Android 性能优化:使用 Lint 优化代码、去除多余资源

http://blog.csdn.net/u011240877/article/details/54141714 *本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 读完本文你将了解到: 前言 什么是 Lint Lint 工作方式简单介绍 从命令行运行 Lint Android Studio 中使用 Lint 团队中建立代码规范利器提...

C#操作Xml:使用XmlWriter写Xml

假定创建了XmlWriter的实例变量xmlWriter,下文中将使用此实例变量写Xml1.如何使用XmlWriter写Xml文档声明 ? // WriteStartDocument方法可以接受一个bool参数(表示standalone,是否为独立文档)或者不指定参数standalone保持默认值 xmlWriter.WriteStartDocume...