基于规则引擎的业务处理方法及业务处理系统技术方案

技术编号:17837662 阅读:36 留言:0更新日期:2018-05-03 19:19
本申请公开一种基于规则引擎的业务处理方法,包括:接收业务事件;从ORACLE数据库获取与所述业务事件对应的业务规则集;调用规则引擎,由所述规则引擎根据所述业务规则集对所述业务事件进行处理,得到处理结果;输出所述处理结果。基于本申请公开的业务处理方法,用户能够根据业务需求的变化,方便、灵活地新建业务规则集或者对已有的业务规则集进行修改,提高了业务数据处理的灵活性,能够满足不断变化的业务需求。本申请还公开基于规则引擎的业务处理系统。

Business processing method and business processing system based on rule engine

This application discloses a business processing method based on the rule engine, including receiving business events; obtaining a business rule set corresponding to the business event from the ORACLE database; invoking the rule engine, processing the business events by the rule engine based on the set of business rules, and obtaining the processing results; The processing results are described. Based on the business processing method of this application, users can easily and flexibly build the set of business rules or modify the existing business rules according to the change of business requirements, which can improve the flexibility of business data processing and meet the changing business needs. The application also discloses a business processing system based on rule engine.

【技术实现步骤摘要】
基于规则引擎的业务处理方法及业务处理系统
本申请属于数据处理
,尤其涉及基于规则引擎的业务处理方法及业务处理系统。
技术介绍
银行系统为了提供更加优质、丰富的服务,经常会推出新的业务,或者对原有的业务进行调整。针对新增的业务和调整后的业务,都需要制定相应的处理流程。目前针对各项业务制定的处理流程被固化在代码中,这使得软件的开发和维护变的异常困难,会耗费大量的时间和成本。如何解决这一问题,是本领域技术人员需要考虑的。
技术实现思路
有鉴于此,本申请的目的在于提供一种基于规则引擎的业务处理方法及业务处理系统,能够针对新增或发生变更的业务需求提供相应的处理方案。为实现上述目的,本申请提供如下技术方案:一方面,本申请提供一种基于规则引擎的业务处理方法,包括:接收业务事件;从ORACLE数据库获取与所述业务事件对应的业务规则集,其中,所述ORACLE数据库存储的业务数据采用SYS.ANYDATA数据类型封装,所述ORACLE数据库存储的业务规则集中的逻辑表达式采用SYS.ANYDATA数据类型封装;调用规则引擎,由所述规则引擎根据所述业务规则集对所述业务事件进行处理,得到处理结果;输出所述处理结果。可选的,在上述业务处理方法中,所述规则引擎根据所述业务规则集对所述业务事件进行处理的过程中,根据预设的规则审计要求,对规则上下文中的数据进行审计。可选的,在上述业务处理方法的基础上,还可以设置:针对多个业务事件分别构建业务规则集,将构建的业务规则集存储于所述ORACLE数据库。可选的,在上述业务处理方法的基础上,还可以设置:接收通过业务规则修改接口输入的业务规则修改信息,利用所述业务规则修改信息对所述ORACLE数据库中相应的业务规则集进行修改。可选的,在上述业务处理方法的基础上,还可以设置:接收通过业务规则添加接口输入的新增业务规则集,将所述新增业务规则集存储至所述ORACLE数据库。另一方面,本申请公开一种基于规则引擎的业务处理系统,包括:事件接收单元,用于接收业务事件;业务规则集获取单元,用于从ORACLE数据库获取与所述业务事件对应的业务规则集,其中,所述ORACLE数据库存储的业务数据采用SYS.ANYDATA数据类型封装,所述ORACLE数据库存储的业务规则集中的逻辑表达式采用SYS.ANYDATA数据类型封装;处理单元,用于调用规则引擎,由所述规则引擎根据所述业务规则集对所述业务事件进行处理,得到处理结果;输出单元,用于输出所述处理结果。可选的,在上述业务处理系统的基础上,还可以设置审计单元,用于在所述规则引擎根据所述业务规则集对所述业务事件进行处理的过程中,根据预设的规则审计要求,对规则上下文中的数据进行审计。可选的,在上述业务处理系统的基础上,还可以设置业务规则集构建单元,用于针对多个业务事件分别构建业务规则集,将构建的业务规则集存储于所述ORACLE数据库。可选的,在上述业务处理系统的基础上,还可以设置业务规则集修改单元,用于接收通过业务规则修改接口输入的业务规则修改信息,利用所述业务规则修改信息对所述ORACLE数据库中相应的业务规则集进行修改。可选的,在上述业务处理系统的基础上,还可以设置业务规则集添加单元,用于接收通过业务规则添加接口输入的新增业务规则集,将所述新增业务规则集存储至所述ORACLE数据库。由此可见,本申请的有益效果为:本申请公开的基于规则引擎的业务处理方法,在ORACLE数据库中存储业务数据和业务规则集,在接收到需要处理的业务事件后,从ORACLE数据库获取相应的业务规则集,调用规则引擎,由规则引擎根据获取到的业务规则集对业务事件进行处理,规则引擎处理业务事件过程中从ORACLE数据库动态地获取所需的业务数据,得到处理结果。由于业务规则集是存储在ORACLE数据库中的,这使得用户能够根据业务需求的变化,方便、灵活地新建业务规则集或者对已有的业务规则集进行修改,提高了业务数据处理的灵活性,能够满足不断变化的业务需求。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请公开的一种基于规则引擎的业务处理方法的流程图;图2为本申请公开的一个规则表实例的示意图;图3为本申请公开的一种基于规则引擎的业务处理系统的结构图;图4为本申请公开的另一种基于规则引擎的业务处理系统的结构图;图5为本申请公开的另一种基于规则引擎的业务处理系统的结构图;图6为本申请公开的另一种基于规则引擎的业务处理系统的结构图。具体实施方式本申请公开基于规则引擎的业务处理方法及业务处理系统,能够针对新增或发生变更的业务需求提供相应的处理方案。下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。参见图1,图1为本申请公开的一种基于规则引擎的业务处理方法的流程图。该方法包括:步骤S1:接收业务事件。步骤S2:从ORACLE数据库获取与所述业务事件对应的业务规则集。ORACLE数据库(OracleDatabase),又称为OracleRDBMS,是甲骨文公司的一款关系数据库管理系统。ORACLE数据库存储有业务数据和预先构建的多个业务规则集。一个业务规则集包括多条规则。ORACLE数据库存储的业务数据采用SYS.ANYDATA数据类型封装,ORACLE数据库存储的业务规则集中的逻辑表达式采用SYS.ANYDATA数据类型封装。SYS.ANYDATA数据类型是ORACLE数据库提供的一种数据类型,不同数据类型的数据通过转换都可以插入SYS.ANYDATA数据类型的字段中。实施中,在接收到业务事件后,根据业务事件的类型从ORACLE数据库获取对应的业务规则集。步骤S3:调用规则引擎,由规则引擎根据获取到的业务规则集对业务事件进行处理,得到处理结果。步骤S4:输出处理结果。规则引擎在执行过程中,加载业务规则集,生成规则上下文,同时规则引擎从ORACLE数据库中动态地获取业务数据,并将业务数据合并到规则上下文中,然后执行规则上下文,得到处理结果。规则的基准是逻辑运算。例如:贷款产品类型='固定资产短期贷款'、贷款金额>2000万、贷款期限>6个月,在以上条件全部满足的情况下,可以匹配到一条规则,并进行规则的后续处理。其中,贷款产品类型、贷款金额和贷款期限是运行期数据(业务数据),每条规则都会配置上对应的上下文中的值,上下文中的值包括所有的运行期数据,支持静态数据。例如:状态码;调用前传入的运行期数据(贷款产品类型);规则运行中传入的运行期数据(贷款金额),通过拼接SQL的方式直接从ORACLE数据库中获取;运行期数据允许在规则执行中进行变更、新增、删除等操作。规则对应的运行期数据都是通过配置的方法实现,也就是说,规则对应的运行期数据采用可配置化的设计,例如:规则A=.本文档来自技高网...
基于规则引擎的业务处理方法及业务处理系统

【技术保护点】
一种基于规则引擎的业务处理方法,其特征在于,包括:接收业务事件;从ORACLE数据库获取与所述业务事件对应的业务规则集,其中,所述ORACLE数据库存储的业务数据采用SYS.ANYDATA数据类型封装,所述ORACLE数据库存储的业务规则集中的逻辑表达式采用SYS.ANYDATA数据类型封装;调用规则引擎,由所述规则引擎根据所述业务规则集对所述业务事件进行处理,得到处理结果;输出所述处理结果。

【技术特征摘要】
1.一种基于规则引擎的业务处理方法,其特征在于,包括:接收业务事件;从ORACLE数据库获取与所述业务事件对应的业务规则集,其中,所述ORACLE数据库存储的业务数据采用SYS.ANYDATA数据类型封装,所述ORACLE数据库存储的业务规则集中的逻辑表达式采用SYS.ANYDATA数据类型封装;调用规则引擎,由所述规则引擎根据所述业务规则集对所述业务事件进行处理,得到处理结果;输出所述处理结果。2.根据权利要求1所述的方法,其特征在于,所述规则引擎根据所述业务规则集对所述业务事件进行处理的过程中,根据预设的规则审计要求,对规则上下文中的数据进行审计。3.根据权利要求1或2所述的方法,其特征在于,还包括:针对多个业务事件分别构建业务规则集,将构建的业务规则集存储于所述ORACLE数据库。4.根据权利要求3所述的方法,其特征在于,还包括:接收通过业务规则修改接口输入的业务规则修改信息,利用所述业务规则修改信息对所述ORACLE数据库中相应的业务规则集进行修改。5.根据权利要求3所述的方法,其特征在于,还包括:接收通过业务规则添加接口输入的新增业务规则集,将所述新增业务规则集存储至所述ORACLE数据库。6.一种基于规则引擎的业务处理系统,其特征在于,包括:事件接收单元,用于接收业务事件;业务规则集...

【专利技术属性】
技术研发人员:冯轶辰
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1