`
priam
  • 浏览: 27994 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

规则引擎的在项目中基础描述

阅读更多

规则引擎在企业中有广泛的使用,比如公司工资的计算,奖金的计算,多种商品组合的折扣,客户积分的兑换等。

开源项目drools是应用比较广泛的。

作为项目集成规则引擎的是比较简单的,有难度是集成web方式的规则定义器,客户可以定义自己的业务规则,或是比较容易能看懂定义的规则。以项目为目标的企业很少有公司单独去做web规则定义定义器。

drools guvnor这个项目已经集成web 规则定义,大家在项目应用中可以直接集成该项目。

该项目在整个项目中的作用和地位可以认为是一个规则定义文件生成工具。最后生成的规则可以存放到数据库中,也可以服务的方式集成到项目中。

1.在开始定义规则前需要定义 类别(category)和一个包(package)

2.事实的载体可以是java文件编译后的jar包,也可以在新建模型声明。

3.按照业务规则就可以定义规则,guvnor提供了1业务规则向导编辑器2dsl编辑器3.drl编辑器 4.决策表 5.决策表web向导编辑。大家可以根据项目要求自行决定。

 

 

 

4.定义好规则的规则可以直接在guvnor进行测试,这个也是一个亮点,测试的思想和junit差不多。

5.经过测试的规则就可以部署到生产系统中去了。

 

 

 

 

2
0
分享到:
评论
4 楼 NIIT_zhu 2013-06-18  
toby2007 写道
问一下楼主 如何和现有的web项目集成?
一个项目如何调用规则引擎?

可以通过Java类调用的方式来把规则集成到项目中去

import com.flagleader.engine.RuleEngine;
import com.flagleader.engine.RuleEngineFactory;
public class TestHello {
public static void main(String[] args) {
try {
RuleEngine engine = RuleEngineFactory.newInstance().getRuleEngine();
engine.put("name", "访问测试");
engine.excute("hello");// 或engine.excute("hello.rsc"); hello或hello.rsc为它在导入的rules下的路径
System.out.println(engine.getString("welcome"));
} catch (Exception e) {
e.printStackTrace() ;
}
}
}
3 楼 NIIT_zhu 2013-05-13  
我们也有web界面的规则编辑
2 楼 toby2007 2010-12-10  
就是第五步 规则就可以部署到生产系统中去了  怎么把他部署到系统中呢?
1 楼 toby2007 2010-12-10  
问一下楼主 如何和现有的web项目集成?
一个项目如何调用规则引擎?

相关推荐

    C# 利用 WF 实现规则引擎

    规则引擎是一种软件系统,它允许程序在运行时动态地执行和修改业务规则,无需更改代码基础结构。C#结合WWF提供了一个强大而灵活的平台来实现这一目标。 首先,让我们理解什么是Windows Workflow Foundation。WWF是...

    商用、开源规则引擎资料汇总

    虽然这些规则语言为规则引擎提供了标准化的基础,但在实际应用中,由于缺乏统一的标准支持,不同规则引擎之间的兼容性仍然是一个问题。2003年发布的JSR94(Java Specification Request 94)试图为Java规则引擎提供一...

    Drools开发教程、规则引擎.pdf

    在Drools的开发过程中,基础知识包括了对规则引擎核心概念的理解。规则引擎是一种以规则为基础来处理数据和执行相应行动的系统。它通常包含了模式匹配、推理和控制机制。在Drools中,规则被定义在规则文件(通常是....

    Drools规则引擎样例系统

    在这个名为"Drools规则引擎样例系统"的项目中,我们可以深入学习如何利用Drools进行规则的定义、存储、管理和执行,以及如何与Java代码紧密结合,构建出高效运行的业务系统。 首先,让我们了解一下Drools的核心概念...

    drools规则引擎系统概要设计说明书

    标题和描述中提到的知识点涵盖了Drools规则引擎和JBoss这两个关键技术组件。Drools是一个基于Java语言的开源规则引擎,它允许开发者将业务规则从应用程序的源代码中分离出来,以规则的形式进行管理。JBoss是一个广泛...

    从Drools规则引擎到风控反洗钱系统v0.3.2.pdf

    1. **什么是规则引擎**:规则引擎是一种嵌入在应用程序中的组件,它允许业务决策逻辑从应用程序代码中分离出来。它通过预定义的语义模块接收数据输入,解释业务规则,并根据这些规则做出决策。它支持规则的次序和...

    国内外主流工作流引擎与规则引擎分析报告.pdf

    工作流引擎和规则引擎是企业信息化系统中的关键组件,它们帮助企业自动化复杂的业务流程并实现灵活的决策逻辑。以下是对这两个引擎的详细分析。 一、工作流引擎 工作流引擎是负责执行预先定义好的业务流程的软件...

    rulesengine:一个用PHP编写的简单规则引擎

    "rulesengine-main" 暗示了这是规则引擎项目的主目录或者主代码库,可能包含了项目的源码、配置文件、示例、文档等资源。 **详细知识点:** 1. **PHP基础** - 需要理解PHP的基本语法、数据类型、函数、类和对象等...

    人工智能-项目实践-搜索引擎-基于solr的中文搜索引擎框架

    标题中的“人工智能-项目实践-搜索引擎-基于solr的中文搜索引擎框架”揭示了这个压缩包文件包含的内容主要是关于人工智能领域的一个具体项目实践,这个实践聚焦于搜索引擎的构建,且是针对中文文本的。Solr,作为...

    urule所需jar包

    **URule规则引擎详解** URule是由国内知名软件企业开发的一款强大的业务规则管理系统,它旨在帮助企业快速构建灵活、可扩展的业务规则应用。...在项目中正确配置和使用这些JAR包,是充分利用URule规则引擎的关键。

    rules_engine:基于Elixir的规则引擎原型

    1. **函数式编程基础**:Elixir的函数式编程特性使得构建规则引擎特别适合,因为它们强调无副作用和纯函数,这在处理复杂的逻辑时有助于保持代码的可读性和可维护性。 2. **Pattern Matching**:Elixir的模式匹配是...

    项目基础框架不含src代码

    【标题】"项目基础框架不含src代码"指出这是一个用于初始化新项目的框架,它不包含任何实际的源代码,仅提供基本的配置结构。这通常是为了让开发者能够根据自己的需求自由定制和扩展,避免预设的代码对项目造成限制...

    Ruby-一个Rails引擎提供工作流程的基本基础设施

    在本案例中,"Ruby-一个Rails引擎提供工作流程的基本基础设施"指的是一个专门为实现工作流程管理而设计的Rails引擎。 工作流程(Workflow)通常涉及到业务流程的自动化,包括任务分配、状态转换和审批流程等。...

    人工智能-项目实践-搜索引擎-定期从搜索引擎获取关键词相关信息

    描述中的“定期从搜索引擎获取关键词相关信息”进一步明确了项目的核心任务,即通过编程方式定时(可能是每天、每周或自定义间隔)从搜索引擎接口获取特定关键词的搜索结果,这些结果可能包括新闻、网页、图片等多种...

    人工智能-项目实践-搜索引擎-搜索引擎快排-网站优化工具软件版,使用代理ip解决点击优化 - 支持 搜狗、百度、必应、360

    描述中提到的“网站优化工具软件版,使用代理ip解决点击优化”,进一步强调了这个工具是软件形式,它利用代理IP地址来帮助网站优化其在搜狗、百度、必应、360等主流搜索引擎的排名。点击优化通常是指通过增加网站的...

    搜索引擎源码,超级搜索引擎程序

    【标签】"GAGA 网搜 引擎源码"中的"GAGA"可能是项目或开发团队的名字,"网搜"则简洁地表达了这是一款网络搜索引擎,而"引擎源码"再次明确了这是一个关于搜索引擎核心代码的资源。 【压缩包子文件的文件名称列表】...

    使用freemarker模版引擎自动生成java项目源代码.zip

    在这个项目中,FreeMarker模版引擎作为工具,帮助生成这些源代码,使得开发人员可以专注于业务逻辑,而非基础架构的搭建。 【压缩包子文件的文件名称列表】: 5575757 由于提供的文件名"5575757"看起来不像是一个...

    Java RuleJava Rule.docx

    JSR-94提供了将规则引擎集成到Java SE或Java EE应用程序中的API,但并未规定业务规则的描述语言。它的目标是确保在不依赖特定规则引擎供应商的情况下,实现规则引擎的集成。 文档中还提到了一些已知的规则引擎实现...

    Python-一个微型中文分词引擎

    描述中提到,这个分词器利用了词语的频率(概率)构建DAG(有向无环图)来进行分词。这种策略通常被称为基于统计的分词方法。DAG的构建基于词语的出现频率,高频率的词语作为起始点,低频率的词语作为终点,形成一个...

Global site tag (gtag.js) - Google Analytics