论文部分内容阅读
随着计算机技术的发展,社会信息化程度的日趋提高和社会业务的不断扩展,对快速增长的业务信息实现用户的自定义查询越来越得到人们的广泛关注。而传统查询系统的设计思路是将查询的业务逻辑溶入到代码之中,不能实现业务逻辑和处理逻辑的分离,在快速的需求增长和需求变更的情况下仍需要程序员的参与,从而不能实现用户对查询的自定义,为此本文提出了基于规则引擎的自定义查询系统。规则引擎(Rule Engine)是实现了基于模式匹配的Rete算法的优秀商务规则处理工具,自定义查询系统(Customized-definition Query System)正是利用规则引擎优秀的商务规则处理能力并将其作为Web应用系统的逻辑控制器来实现对查询规则的定义和解析,从而实现查询的客户化定制,解决了面对需求的增长或变更时需要程序员参与来增加或修改底层代码的问题,具有很好的功能扩展性。为使规则引擎适应自定义查询系统的特点和发挥其自身优势,本文从如下方面对规则引擎做了功能扩展和有益尝试:1、拓展了规则引擎的相关技术,包括查询条件的转化、XML规则文件的扩展、规则引擎操作数据方式的扩展和规则解析队列的处理。2、设计了规则引擎的外围接口及逻辑操作部件,采用集中控制和调用的方式实现对多数据源下数据库的操纵,从而实现对应用层数据库底层差异的屏蔽。3、将规则引擎作为Web应用服务器的逻辑控制器实现用户业务请求控制,实现对客户端定义的查询信息的查询规则文件的生成和解析,并取得了较好的效果。4、引入数据库元数据映射功能模块,对规则引擎提供基础数据支持和使其功能分离,使得规则引擎能够集中精力处理查询定义的业务逻辑而无需顾及基础数据的维护。