使用AJAX和J2EE创建功能强大的瘦客户端
来源:网络 更新时间:2014-12-2
创建于1998年的IconixPharmaceuticals公司从事科研和工业方面的软件开发。该公司是chemogenomics方面的先驱,chemogenomics是一门学科,这门学科使用化学和基因学的方法,在堆积如山的数据中深入研究,而这些数据对于开发新药并推向市场来说是必须的。
对于公司来说,一个主要的挑战是:产生一种新药或者提供制药工业所需要的信息需要将分散的、不同的数据库的数据集成起来,并且来分析它们,最后得到引人注目的结果。大多数的研究者都同意:当数据不能从一个单一数据源获得的时候,通过创建多路径的连接来取得重大发现几乎是不可能的。
DrugMatrix解决方案
在IconixPharmaceuticals公司,我们开发了DrugMatrix软件应用系统来有效的处理我们的chemogenomics数据库。为了建立这样一个解决方案,我们知道,我们必须把高性能的信息处理系统和一个互交式GUI界面结合起来,这样才能允许研究人员进行一个迭代式的研究,并且将研究和显示在他们显示器的信息结合起来。
这篇文章讨论了IconixPharmaceuticals公司在开发DrugMatrix软件应用系统时,AsynchronousJavaScriptplusXML(AJAX)所扮演的角色。它包括了我们在开发决策过程中的选择,以及我们为什么决定使用一个基于AJAX的RichInternetApplication(RIA)。在文中,我们也要讨论到我们所得到的教训和我们所相信的这种技术将把我们领向何处。
富客户端(RichInternetApplication简称RIA)技术和AJAX
本质上来说,RIA技术将鲁棒的图形用户接口(graphicaluserinterface简称GUI)和基于浏览器的信息处理系统结合起来。如果做到这样,那么就将C/S模式的胖客户端和B/S的基于浏览器的瘦客户端之间架起了桥梁。而且,基于AJAX的RIAWeb信息处理系统处理起数据来迅速并且不需要预装插件、Applet和Active-X。
AJAX的角色
作为一种实用的功能强大的WEB开发技术,今天,AJAX技术使得搜索引擎和其他消费应用能够大大增强网上冲浪者的用户体验。另外,AJAX使得产生这样一种解决方案成为可能,这种方案通过提供富GUI的基础设施来获取商务数据,比胖客户端或基于插件的解决方案的创建、维护和实施花费更少。富特性、高生产力、更大的显示数据的能力和更少开销可以获得更大的竞争力。
应用开发的亮点
DrugMatrix是一个三层的、可扩展信息(three-tieredeXtensibleInformatics简称XIS)结构。由数据仓库、应用服务器(包括一个将数据以一种图形相关的xml格式传递给所有者的通讯机制)和用户接口组成。应用服务器是可配置的,通过描述数据仓库的模型的元数据来配置。为了简化增加数据分析和显示工具到系统里,应用服务器使用插件技术。用户接口也是动态可配置的,通过使用能够搜索和显示所有数据项的元数据来配置。
图一:DrugMatrix可扩展信息系统(XIS)的架构
解决步骤
IconixPharmaceuticals公司的开发小组考虑和驳回了好几种设计方案。
1.在Web页面嵌入JavaApplet
这种方案对于基于chemogenomics数据库的超大块数据来说是低效率的。对于每一次的查询都需要载入几十列和上百行的数据的请求来说,十分明了,系统将会很快的停顿下来。DrugMatrix'系统希望将数据流和HTML区别开来,并且在客户端缓存数据而使得服务器能够传递更多的数据。系统也希望客户端能够访问缓存的数据,当研究者在数据列表和单个的“Detail”HTML页面来回的时候。
2.在数据传递到JSP页面时,使用JavaServerPages(JSP)model