LQuery的设计原则考虑以下几个方面的要求:性能、可靠性、吞吐量、可扩充性、可管理性、可重用性和安全性。
LQuery的性能一般用一个用户终端对某一个操作的响应时间来衡量,如不考虑后台数据库性能的开销,LQuery对以下各类操作的处理时间为:
操作类型 |
处理时间 |
对表或基于存储过程的数据清单 |
不超过2秒 |
对表的汇总性角度分析 |
不超过10秒 |
对后台返回的数据进行图形展示 |
不超过2秒 |
LQuery在生产运行系统中应该支持7×24小时不间断运行的要求。
LQuery应该支持一定的并发量,保证在多个前端用户同时进行查询分析的时候,系统能维持客户满意的处理性能并同时保证系统稳定运行不崩溃。系统能支持的并发用户数应至少在10个以上。
LQuery的可扩充性体现在两个层面:应用层和开发层。
应用层的可扩充性是指平台提供的配置化的增加应用查询分析功能的能力,用户在不影响已有系统功能的前提下可以方便地增加额外的功能或修改已有功能。
开发层的可扩充性体现在源程序的易于扩充和修改,这往往通过低耦合、接口和封装等设计技术去实现。
LQuery应该有友好的用户界面,易于管理和维护,并允许动态的系统配置管理。
LQuery的组件应该能最大程度可重用,以提高开发和管理效率。
LQuery通过提供用户认证、功能权限和数据权限从而保证系统的安全性。
LQuery使用三层的B/S体系架构,即将应用功能分成表示层、功能层和数据层三个部分。表示层是应用的用户接口部分,它负担应用和用户间的对话。功能层负责处理具体的业务逻辑。数据层负责对数据库或文件数据的读写。
这种三层的体系结构具有以下特点和优越性:
客户端零维护、可扩展性好、安全性好和可移植性好。
JAVA/J2EE/SOA/XML/AJAX技术可以支持分布式的企业应用模型,可以提供可扩展的,模块化的组件开发模式和组件装配技术。
基于JAVA/J2EE的企业应用可以方便快捷地部署到任意JAVA应用服务其平台产品之上,从而实现“一次开发、处处可用”的理想目标。
基于SOA的服务请求处理模式可以更好地解决企业内部多种系统之间的互联互通及数据共享,实现系统之间的轻耦合。而XML技术更是为系统之间的数据传递提供了更标准的表达方式。
AJAX技术的广泛应用更是改善了用户的操作体验,通过页面的无刷新技术,使用户的页面执行效率得到了极大的提高。
LQuery可以对数据库中的表或视图进行清单式查询,也可以对能返回数据的存储过程做清单式查询,也可以对表或视图进行汇总性的分析查询。
LQuery各个查询功能是通过XML文件配置产生的,对各个功能的修改只需要修改配置文件,无需重新启动应用服务器或重新登录。
LQuery所需的各类代码表是从XML配置文件产生的或者动态从数据库读取,无需在源程序中维护。
LQuery通过对XML的配置,可以对数据库表记录的内容直接进行修改操作,同时也可以对文本文件或excel文件的进行修改或批量读取。
LQuery从在个层面上来说可以是struts+hibernate的替代品,但是LQuery使用起来更方便,功能更强大。
LQuery对查询结果可以以系统自定义的风格进行展现,保持界面的一致性,用户也可以自己定义页面展现的风格。
系统的自定义的风格有:表格、饼图、柱状图、线图、柱状图3D和饼图3D等。
通过LQuery的定制,开发者可以自己开发数据的展现页面。
LQuery对每一个用户请求URL是通过WEB服务器提供的过滤器技术Filter实现合法性检查的,系统通过配置文件提供了对不同的页面的检查方式。
在Filter过滤器基础上,平台提供了对操作人员及及其机构进行权限控制的功能,而业务功能模块无需关注安全控制是怎么实现的,只需专注业务功能的实现。
LQuery可以实现基于用户透明的跨数据库访问(查询及修改等〕支持,以LQuery为架构的应用系统可以轻松地同时与任意多个外围业务系统如ERP/CRM系统集成。 |