[发明专利]一种动态加载组件的方法及系统有效
申请号: | 201110441002.0 | 申请日: | 2011-12-26 |
公开(公告)号: | CN102541598A | 公开(公告)日: | 2012-07-04 |
发明(设计)人: | 肖正祥 | 申请(专利权)人: | 深圳联友科技有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 深圳市顺天达专利商标代理有限公司 44217 | 代理人: | 易钊 |
地址: | 518031 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 动态 加载 组件 方法 系统 | ||
技术领域
本发明涉及应用程序加载组件领域,尤其涉及一种动态加载组件的方法及系统。
背景技术
信息技术高速发展的今天,企业的发展已经越来越离不开信息化技术的支持,虽然面向对象、组件化开发的方法以及如今的面向服务的开发模式的软件技术的不断发展,但是,如何开发更人性化,更智能的,能适应不断变换的业务需求的软件系统,一直以来都是软件工厂所需要解决的重要难题。
现有许多系统中,系统框架组件与业务组件同存于系统运行主程序所在文件夹中,即使某系统用户只使用系统中很少一部分功能,主程序启动时也会将所有组件加载入内存。
另外,现有技术中,系统是按用户请求加载所需的相应功能组件,但加载后,需重启应用系统或重启在线应用服务(即Web Service)才能更新组件,不能达到事半功倍的效果。
发明内容
本发明要解决的技术问题在于针对现有技术中运行系统程序时会将所有组件都加载入内存,影响系统启动速度的缺陷,提供一种在用户请求下才加载相应功能模块组件的动态加载组件的方法及系统。
本发明解决其技术问题所采用的技术方案是:
提供一种动态加载组件的方法,包括以下步骤:
将应用程序下的不同功能模块的组件存放于不同的文件夹中,并将对应组件的存放路径保存在配置文件中;
应用程序启动时,读取配置文件,加载该应用程序系统框架的必要组件,在接收到用户调用该程序下的功能模块的请求时,按照所述配置文件中该功能模块的组件存放路径加载该功能模块的组件,并缓存于内存中。
本发明所述的方法中,还包括步骤:
监控与该应用程序相关的文件是否发生异动,若文件有异动,则卸载内存中的对应组件,并重新加载相应组件。
本发明所述的方法中,所述根据用户调用功能模块的请求,按照所述配置文件中的存放路径加载该功能模块组件的步骤具体包括:
接收用户调用功能模块的请求信息;
从配置文件中获取该功能模块的组件存放路径,将该存放路径下的所有组件复制到系统运行文件夹中;
从所述系统运行文件夹中加载组件;
获取所加载的组件,返回调用结果。
本发明所述的方法中,若所加载的组件存在引用项,则依次加载引用项。
本发明所述的方法中,若应用程序检测到组件存在更新,则还包括步骤:
复制新版本组件到对应功能模块组件所在的文件夹下;
依次遍历内存中已经加载的对应模块的组件,并与复制的新版本组件进行比较;
若比较结果存在差异,将新版本组件复制到系统运行文件夹中;
卸载当前内存中已经加载的组件;
重新加载新版本组件。
本发明所述的方法中,通过字节流方式加载功能模块的组件。
本发明解决其技术问题所采用另一的技术方案是:
提供一种动态加载组件的系统,包括:
分组模块,用于将应用程序下的不同功能模块的组件存放于不同的文件夹中,并将对应组件的存放路径保存在配置文件中;
请求接收模块,用于接收用户调用应用程序下的功能模块请求;
组件加载模块,用于在应用程序启动时,加载该应用程序框架的必要组件;还用于在请求接收模块接收到用户请求时,按照所述配置文件中该功能模块的组件存放路径加载该功能模块的组件,并缓存于内存中。
本发明所述的系统中,该系统还包括:
监控模块,用于监控与应用程序相关的文件是否发生异动;
卸载模块,用于在与应用程序相关的文件发生异动时,卸载内存中的对应组件,组件加载模块再重新加载相应组件。
本发明所述的系统中,该系统还包括组件更新模块,该组件更新模块具体包括:
更新检测模块,用于通过应用程序检测组件是否存在更新;
比较模块,用于在更新检测模块检测到新版本组件时,复制新版本组件到对应功能模块所在的文件夹下,并依次遍历内存中已经加载的对应功能模块的组件,与复制的新版本组件进行比较;若比较结果存在差异,则将新版本组件复制到系统运行文件夹中,通过卸载模块卸载当前内存中已经加载的组件,并通过组件加载模块重新加载新版本组件。
本发明所述的系统中,组件加载模块通过字节流方式加载功能模块的组件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳联友科技有限公司,未经深圳联友科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110441002.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:巷道邦线生成装置
- 下一篇:基于物联网的离网型小型风电站监控系统及其监控方法