WEB开发网
开发学院软件开发Java Java规则引擎与其API(JSR-94) 阅读

Java规则引擎与其API(JSR-94)

 2010-07-02 00:00:00 来源:WEB开发网   
核心提示: 4、 Java规则引擎API(JSR-94)4.1 简介过去大部分的规则引擎开发并没有规范化,有其自有的API,Java规则引擎与其API(JSR-94)(6),这使得其与外部程序交互集成不够灵活,转而使用另外一种产品时往往意味需要重写应用程序逻辑和API调用,4.2.1规则管理API 规则管理

4、 Java规则引擎API(JSR-94)

4.1 简介

过去大部分的规则引擎开发并没有规范化,有其自有的API,这使得其与外部程序交互集成不够灵活。转而使用另外一种产品时往往意味需要重写应用程序逻辑和API调用,代价较大。规则引擎工业中标准的缺乏成为令人关注的重要方面。2003年11月定稿并于2004年8月最终发布的JSR 94(Java规则引擎API)使得Java规则引擎的实现得以标准化。

Java规则引擎API由javax.rules包定义,是访问规则引擎的标准企业级API。Java规则引擎API允许客户程序使用统一的方式和不同厂商的规则引擎产品交互,就像使用JDBC编写独立于厂商访问不同的数据库产品一样。Java规则引擎API包括创建和管理规则集合的机制,在 Working Memory中添加,删除和修改对象的机制,以及初始化,重置和执行规则引擎的机制。

4.2 简介Java规则引擎API体系结构

Java规则引擎API分为两个主要部分:运行时客户API(the Runtime client API)和规则管理API(the rules administration API)。

4.2.1规则管理API

规则管理API在javax.rules.admin中定义,包括装载规则以及与规则对应的动作(执行集 execution sets)以及实例化规则引擎。规则可以从外部资源中装载,比如说URI,Input streams, XML streams和readers等等.同时管理API提供了注册和取消注册执行集以及对执行集进行维护的机制。使用admin包定义规则有助于对客户访问运行规则进行控制管理,它通过在执行集上定义许可权使得未经授权的用户无法访问受控规则。

管理API使用类RuleServiceProvider来获得规则管理(RuleAdministrator)接口的实例.规则管理接口提供方法注册和取消注册执行集.规则管理器(RuleAdministrator)提供了本地和远程的RuleExecutionSetProvider.在前面已提及,RuleExecutionSetProvider负责创建规则执行集.规则执行集可以从如XML streams, input streams等来源中创建.这些数据来源及其内容经汇集和序列化后传送到远程的运行规则引擎的服务器上.大多数应用程序中,远程规则引擎或远程规则数据来源的情况并不多见.为了避免这些情况中的网络开销,API规定了可以从运行在同一JVM中规则库中读取数据的本地 RuleExecutionSetProvider.

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:Java 规则 引擎

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接