龚小玲 陈秋瑾
广西玉林市第一人民医院,广西玉林 537000
[摘要] 电子病历是医疗健康信息个性化发展的趋势。病历作为患者信息的载体,集中反映了患者的诊断治疗过程,电子病历则是数字信息化的病历,它不仅包括静态病历信息,还提供相关服务,实现患者信息的采集、加工、存储、传输和服务。传统B/S模式的医院病历档案信息系统采用同步处理方式,导致数据传输量大、响应缓慢、用户体验差等问题。该文介绍了Ajax的工作原理,并将Ajax技术应用到病历档案信息系统中,通过测试,证明了基于Ajax技术的医院病历档案信息系统可以减少网络传输量与减轻服务器负载,有更快的响应速度,更有利于B/S结构的应用,带来了全新的用户体验。
[教育期刊网 http://www.jyqkw.com
关键词 ] Ajax;病历档案;信息系统;B/S
[中图分类号] R19 [文献标识码] A [文章编号] 1672-5654(2015)01(a)-0160-03
[作者简介] 龚小玲(1971-),女,广西玉林人,本科,质控科副科长,副主任技师,研究方向:患者资料管理。
现阶段的病历档案信息系统一般是基于C/S或B/S构架,而在B/S构架模式中,病历档案信息系统一般是基于WEB1.0技术开发的。此类B/S构架模式的信息系统工作时,在发出请求后,每一个与服务器互动都要以同步处理方式传输、刷新整个网页内容,它遵循开始→停止→开始→停止模式,网络传输数据量较大,响应非常缓慢,用户体验较差。随着Ajax技术的应用,可以有效地解决这些问题。Ajax技术可以与HTML无缝地集成起来,而无须改变已有的Web内容,不会让用户多次处于等待的状态,让用户体验变得连贯顺畅,大大提升了用户体验。
1 Ajax技术
1.1 Ajax技术概念
Ajax (Asynchronous JavaScript and XML),最早由Jesse James Garrett[1]在2005年2月的 《Ajax: A New Approach to Web Applications XML》正式提出,它基于JavaScript和XML技术的异步运行机制,是一种用于改变用户体验、创建交互式网页的新型开发技术;从技术本质来说,Ajax使用的诸多技术都是成熟的老技术(包括Javascript、XHTML和CSS、DOM、XML和XSTL、XMLHttpRequest等),它是多种综合技术的全新应用。
1.2 Ajax技术工作原理
1.2.1 传统Web程序访问模式工作原理 不像桌面程序一样能快速地在本机运行处理,Web应用程序是基于网络远程运行处理的,因此,在传统Web程序模式中,当在用户端使用浏览器访问服务器网页时,网络来回传输、服务器接受请求、处理请求等环节会消耗掉一定的时间,特别是当访问的网页文件比较大时,整个响应过程速度会更慢。此时,客户端的用户只能无耐地等待。这就是不具连贯和流畅性的发出请求→等待→响应→再请求→再等待的传统同步处理模式(如图1所示)[2] 。
1.2.2基于Ajax的Web程序访问模式工作原理 Ajax使用XMLHttpRequest和JavaScript对象方法在用户端和服务器端建立一个中间件Ajax引擎(其实就是增加一些程序代码),以异步处理方式代替原来的用户访问请求与服务器响应的同步处理方式。在这种异步处理方式里,它不像传统处理模式一样要点击提交或点击链接后,把整个网页进行刷新处理,而是以数据或事件触发的方式(如在输入框输入数据、拖动鼠标、选择文本等),先交给Ajax引擎处理,根据需要刷新处理网页中的某一部份。这样,服务器端只须处理部分数据,大大减轻了服务器端的工作量和网络传输的数据量。客户端用户无须进行漫长的等待,操作过程中没有中断的感觉,即可快速地得到处理结果,接近胖桌面应用(rich desktop applications)(如图2所示)。
2系统分析
病历档案信息系统是计算机技术与临床发展应用的需要,借助它可以显著地提高医疗工作效率,降低医务工作者信息处理的工作强度,减少出错概率,规范医疗行为。总的来说,医院病历信息系统应该达到以下目标与要求。
①系统应具备病历信息管理、检索查询、整理编目、系统维护、安全保密等基本功能,并有良好的扩充性,能辅助医院管理及根据用户某些特殊需求增扩其它对应的功能[3]。
②系统应具有良好的兼容性和实用性,并区别于以往基于Web1.0环境中的信息系统,采用全新的Ajax技术,增加管理功能的同时,用户界面友好,操作简单,使用方便,处理过程无须等待,让用户有良好的操作体验。
③系统应具备强大的数据处理能力,遵循“按实际需求读取、刷新数据”的原则,提供响应速度,在硬软件环境发生变化时仍能保证数据的安全迁移、完整和有效使用。
④系统的开发研制与功能设计必须符合国家有关档案工作和医院管理的相关规定和业务技术标准[4]。
3系统设计
医院病历信息系统的主要功能模块如图3所示。
3.1档案扫描模块
提供一体化的数字化扫描,保证经数字化扫描处理后能够转成符合行业标准格式要求的电子文件,保证扫描处理后产生的数字化档案文件符合医院原档案纸质化格式和质量要求。
3.2数字档案管理模块
包括医院数据库的建立、删除、修改、更新等,对医院档案目录和项目信息数据的输入、修改、存储、删除等;保证信息系统对录入的源数据与目标档案数据对应项目的格式一致,并可根据归档标识实现各类归档文件的自由迁移;对各种不同类型的档案数据,提供通用文件格式的转换服务。
3.3整理编目模块
提供数据采集、分类排序、类目设置、目录生成、数据校验、数据统计、打印输出等常用功能,并能根据用户需要增加教育期刊网 http://www.jyqkw.com
关键词 (或主题词),能对分类号自动标引。
3.4档案检索查询和借阅模块
提供按题名、形成时间、责任者、分类号、主题词等多种条件组合检索查询,并提供借阅管理、预约查询等辅助功能;能对查询结果进行排序、显示、打印、另存等选择处理;可应用户特定需求,设置档案编号、文件编号等辅助检索项。
3.5安全保密模块
提供严格的系统访问控制权限,防止越权、越级操作;保证信息系统对档案数据的采集、处理、存储、使用、传递和销毁等每个环节均按照医院有关保密制度进行,对每一档案有相应的密级识别。
3.6档案的打印输出模块
对建立的电子档案,可以由具有对应权限的用户直接打印输出为纸质档案,减少复印工作。
3.7系统管理和设置模块
提供用户权限管理、系统日志管理、数据的备份与恢复等基本功能;实现对所有操作用户自动判断权限分类,警示、拒绝非法操作并加以记录。
4系统实施
基于Ajax的医院病历档案信息系统,以医院档案管理为核心,实现网络化、虚拟化的管理。 系统采用SQL Server 2005数据库,Java MyEclipse 8.5(完整支持HTML、Struts、JSP、CSS、Javascript、Spring、SQL、Hibernate等),应用Tomcat 5.5服务器。系统总体由客户端、Ajax引擎与服务器端3层组成,系统体系结构如图4所示。
在以往传统的B/S应用模式中,客户端表现层一般只有HTML、CSS,或加上少量的Javascript来完成诸如数据验证之类的工作,每提交一个表单就要刷新一次网页,这样会导致客户端的交互能力过弱,需要大量的刷新工作,系统响应迟钝。
基于Ajax的医院病历档案信息系统改变了以往传统的模式,使用Hibernate作为持久工作层,负责Java语言对象与数据库间的映射;使用JavaBean来完成服务器端的数据处理工作;利用Dom4j实现Java对象的序列化工作及解析来自客户端的XML数据流;使用Servlet来负责响应从浏览器发送过来的请求,并把数据处理的结果返回给客户端浏览器。Ajax引擎工作在客户端,负责与服务器交互工作;Javascript负责响应浏览器请求与数据处理工作;DOM负责读取与更新HTML格式文档,而HTML、CSS则负责数据的在浏览器中的表示[3]。这样,可以让系统中所有功能模块的交互操作比如添加、修改、删除、更新等,均不需要刷新网页就可完成,这与传统非Ajax模式的B/S系统有着非常显著的区别。在开发中,系统应用实现了如DataGrid、TreeView、Auto-Complete等无刷新数据控件。
5网络性能分析
为了方便比较,使用SQL Profiler监测工具对服务器负荷进行记录,分别在原来传统的B/S模式与基于Ajax模式中录入数据,每间隔6秒录入相同内容的档案信息,连续查询20次。SQL Profiler监测结果如图5所示[5]。
通过比较监测结果,明显地表明由于传统模式下录入数据,点击提交后整个页面内容都会被提交,还要返回重新刷新页面,服务器端的数据处理量(见图5中纵坐标流量,单位:Byte)急剧增加。而使用了基于Ajax技术模式的信息系统,在录入数据时,不会提交整个页面,页面无须进行刷新工作,对新录入的档案信息以XML数据流从后台经Ajax引擎直接传给服务器端,服务器实际上仅须处理一次即可完成录入工作,服务器端的数据处理量明显减少(见图5纵坐标流量,单位:Byte)。
6基于Ajax技术的医院病历档案信息系统的优点
6.1全新的用户体验
基于Ajax技术的医院病历档案信息系统不同于传统的Web同步处理模式,它以异步处理方式刷新网页,像桌面应用程序一样,无须用户等待,大大提升系统运行时的用户体验。
6.2 更快的响应速度
基于Ajax技术的医院病历档案信息系统遵守“按实际需求读取数据”和“按实际需求刷新数据”的原则,交互时只处理网页中的一部份数据,只刷新一部份网页内容;对那些不涉及到的数据内容不进行任何处理,减少了处理的时间和加快了处理的速度。
6.3 减少网络传输量与减轻服务器负载
与传统的处理模式相比,基于Ajax技术的医院病历档案信息系统的处理,只有少量需要用到的数据,而不是整个网页内容,原本由服务器端完成的工作,现在用Ajax引擎就能直接处理了,减轻了网络传输的数据量与服务器处理负载。
[教育期刊网 http://www.jyqkw.com
参考文献]
[1] Jesse James Garrett.Ajax:A New Approach to Web Applications[EB/OL].http://www.adaptivepath.com/publications/essays/archives/000385.php,2006.
[2] 潘燕.探索医院病历档案优化管理新思路[J].中国管理信息化,2011(16):74-75.
[3] 胡奇光,莫照.Ajax技术在公路信息管理系统中的应用[J].计算机与数字工程,2008(12):155-158.
[4] 张晓伟.医院病历档案信息化管理中的利弊探析[J].办公室业务,2014(1):189-190.
[5] 张佳.文档一体化背景下的档案管理软件评价机制研究[D].广西民族大学硕士论文,2007(4).
(收稿日期:2014-09-23)