首页 > 编程知识 正文

workbench和navicat哪个好,wampserver怎么使用

时间:2023-05-05 14:47:27 阅读:108919 作者:3198

本文基于Drools 7.5.0.Final。 6.x和7.x版基本上类似于安装,但7.x提供了docker镜像,因此安装workbench和kie-server比6.x简单许多倍。

首先需要准备文档环境。 Docker的安装步骤不在此说明。 请参阅官方网站上的安装教程或私人教程。 安装后,由于Docker仓库在国外,下载速度可能会很慢,所以首先配置Docker官方的国内加速器(蚂蚁、网络等其他镜像加速器,可能没有Drools的镜像),配置方法参考: Docker

1 .安装1. Workbench的第一步:从镜像仓库中检索drools-workbench镜像文件:

dockerpulljboss/drools-workbench-showcase步骤drools-work bench启动镜像:

docker run-p 808033608080-p 8001:8001-d-- name drools-WB JBoss/drools-work bench-showcase 3360 latest是容器和APP机箱

user password role * * * * * * * * admin admin,admin pm sales-rep sales-rep analyst,salescsdfy csdfy analyst,HRjack jack analyst IT基础上是showcase用户和角色,如果需要自定义用户结构,则必须自己创建Docker镜像以镜像Jboss/

2. Workbench使用2.1 .项目创建进入主页,点击Design中的projects链接进入项目管理界面

点击右上角的【Add Project】添加项目,填写项目名称和Maven三件套完成项目的创建。

2.2 .打包点击创建的项目进入主界面,点击右上角的【Create New Asset】,选择【打包】,选择数据对象存放的打包com.q Chery.Harper

所有资源都在【Create New Asset】中创建,但省略详细内容。

2.3 .创建数据对象选择【数据对象】进行Fact创建,首先创建地址对象。

单击【添加字段】向当前对象添加字段,并设置字段类型和说明。 字段添加完成后,点击【源代码】,确认生成的对象是否满足自己的要求,如果满足,点击【保存】即可。

通过创建ApplyInfo对象并在ApplyInfo中包含地址对象,可以看出Drools支持自定义类型。

2.4 .定义完规则创建对象后,创建简单的规则。 同样地创建Asset,然后选择【Guided规则】。 在配置规则内容之前,必须添加相关的数据对象

根据刚才添加的数据对象,设定简单的规则。

配置完成后,可以在【源代码】中查看规则的生成情况。 也可以点击【检查】保证规则成功编译通过。

2.5 .场景测试规则创建完成后,必须通过测试才能发布生产环境。 在workbench中,测试也可以在配置中完成。

点击Asset,选择【测试场景】,添加相关数据对象,配置测试条件和预期结果。 为了简单起见,这里只配置了正向的测试场景。 在实际应用的过程中,还应该配置反向的测试场景,保证规则的正确性。

2.6 .在提交规则发布规则之前,必须首先配置KieBase和KieSession,即kmodule.xml文件。 workbench还通过界面配置和自动生成kmodule.xml文件。

点击项目主页(有Create New Asset的页面)右上角的【Settings】按钮,选择【知识库与会话】

进入配置界面,可以配置知识库和会话,灵活分组规则,提高规则的复用性。

部署完成后,可以单击项目主页上的【BuildDeploy】进行发布。 规则是

发布到本地的 maven 仓库中。

3. Kie-server 安装及启动

与 Workbench 的安装方式一样,需要先从仓库拉取最新镜像文件:

docker pull jboss/kie-server-showcase

拉取完成后,启动 kie-server,并链接到一个已经启动的 Workbench 上

docker run -p 8180:8080 -d --name kie-server --link drools-wb:kie_wb jboss/kie-server-showcase:latest

启动完成后,点击 Workbench 首页中【DevOps】下在 【servers】链接,即可看到刚刚发布的规则容器与注册好的 kie-server 服务器,此时只需要选择容器,并点击【启动】就可以将容器与 kie-server 服务器关联起来。

启动完成后,容器界面与服务器界面上都可以看到彼此的信息,我们可以通过 kie-server 提供的 Rest 接口查看服务器及容器的相关信息,默认的用户名密码为 kieserver/kieserver1!,根据以上配置可以查看到的信息如下:

服务器信息:http://localhost:8180/kie-server/services/rest/server/

容器信息:http://localhost:8180/kie-server/services/rest/server/containers

4. Kie-server 使用

在调用 Rest 接口前,需要先在本地定义一套与 WorkBench 中完全一致的数据对象,可以通过拷贝 Workbench 里面生成的源代码来快速实现,远程规则调用实现代码如下:

import com.qchery.harper.fact.Address;import com.qchery.harper.fact.ApplyInfo;import org.kie.api.KieServices;import org.kie.api.command.Command;import org.kie.api.command.KieCommands;import org.kie.api.runtime.ExecutionResults;import org.kie.server.api.marshalling.MarshallingFormat;import org.kie.server.api.model.ServiceResponse;import org.kie.server.client.KieServicesClient;import org.kie.server.client.KieServicesConfiguration;import org.kie.server.client.KieServicesFactory;import org.kie.server.client.RuleServicesClient;import java.util.LinkedList;import java.util.List;public class Main { public static final String SERVER_URL = "http://localhost:8180/kie-server/services/rest/server"; public static final String PASSWORD = "kieserver1!"; public static final String USERNAME = "kieserver"; public static final String KIE_CONTAINER_ID = "harper_1.0.0"; public static void main(String[] args) { // KisService 配置信息设置 KieServicesConfiguration kieServicesConfiguration = KieServicesFactory.newRestConfiguration(SERVER_URL, USERNAME, PASSWORD, 10000L); kieServicesConfiguration.setMarshallingFormat(MarshallingFormat.JSON); // 创建规则服务客户端 KieServicesClient kieServicesClient = KieServicesFactory.newKieServicesClient(kieServicesConfiguration); RuleServicesClient ruleServicesClient = kieServicesClient.getServicesClient(RuleServicesClient.class); // 规则输入条件 ApplyInfo applyInfo = new ApplyInfo(); applyInfo.setAge(19); Address familyAddress = new Address(); familyAddress.setProvince("aa"); applyInfo.setFamilyAddress(familyAddress); // 命令定义,包含插入数据,执行规则 KieCommands kieCommands = KieServices.Factory.get().getCommands(); List<Command<?>> commands = new LinkedList<>(); commands.add(kieCommands.newInsert(applyInfo, "applyInfo")); commands.add(kieCommands.newFireAllRules()); ServiceResponse<ExecutionResults> results = ruleServicesClient.executeCommandsWithResults(KIE_CONTAINER_ID, kieCommands.newBatchExecution(commands, "ksessionId")); // 返回值读取 ApplyInfo value = (ApplyInfo) results.getResult().getValue("applyInfo"); System.out.println(value); }}

参考链接:

drools-workbench 安装说明kieserver 安装说明Drools Documention

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。