[发明专利]一种应用类加载方法、装置及web应用类加载器在审
申请号: | 201510960904.3 | 申请日: | 2015-12-21 |
公开(公告)号: | CN105630540A | 公开(公告)日: | 2016-06-01 |
发明(设计)人: | 乔景军;高隆林;韩峰;何忠胜;赵欣;李得亮 | 申请(专利权)人: | 山东中创软件工程股份有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京汇泽知识产权代理有限公司 11228 | 代理人: | 张瑾 |
地址: | 250014 山东省*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用 加载 方法 装置 web | ||
技术领域
本发明涉及计算机应用技术领域,尤其涉及一种应用类加载方法、装置及web应用类加载器。
背景技术
目前,对于以javax.开头的类,应用服务器中的类加载器会委托父加载器进行类加载,应用服务器自身具有各种版本的以javax.开头的类,应用服务器所要部署或迁移的应用也会引入各种版本的以javax.开头的类。可见,应用服务器的类与应用服务器待部署或迁移的应用的类有可能是同名类,例如都是以javax.开头的类。
在实现本发明的过程中,发明人发现现有技术中至少存在如下技术问题:
由于应用服务器会优先加载自身的类,而不是所要部署或迁移的应用的类,所以当应用服务器的类与应用服务器待部署或迁移的应用的类是同名类时,会导致类加载所加载的不是所要部署或迁移的应用的类,而是应用服务器所具有的同名类,从而导致应用部署失败;另外,应用服务器的类与待部署或迁移的应用的类也会存在二者属于版本不同的同名类,此时会导致类冲突问题,从而也会造成应用部署或迁移失败。
发明内容
本发明提供的应用类加载方法、装置及web应用类加载器,其通过动态可配置的类加载机制,能够灵活控制类加载方式,从而高效、便捷地完成应用的部署或迁移。
第一方面,本发明提供一种应用类加载方法,包括:
获取类加载请求,所述类加载请求中包括请求加载类的类名;
根据请求加载类的类名,判断所述请求加载类是否需要委托父加载器进行加载;
如果是,则将所述请求加载类发送至所述父加载器;
如果否,则自身加载所述请求加载类。
可选地,所述根据请求加载类的类名,判断所述请求加载类是否需要委托父加载器进行加载包括:
读取不需要所述父加载器进行加载类的类名集合;
判断所读取的类名集合中是否包含所述请求加载类的类名,如果是,则表明所述请求加载类需要自身加载;如果否,则表明所述请求加载类需要委托所述父加载器进行加载。
第二方面,本发明提供一种应用类加载装置,包括获取模块、判断模块、发送模块和加载模块,其中,
所述获取模块,用于获取类加载请求,所述类加载请求中包括请求加载类的类名;
所述判断模块,用于根据请求加载类的类名,判断所述请求加载类是否需要委托父加载器进行加载;
所述发送模块,用于当所述判断模块的判断结果为是时,将所述请求加载类发送至所述父加载器;
所述加载模块,用于当所述判断模块的判断结果为否时,加载所述请求加载类。
可选地,所述判断模块包括读取单元和判断单元,其中,
所述读取单元,用于读取不需要所述父加载器进行加载类的类名集合;
所述判断单元,用于判断所读取的类名集合中是否包含所述请求加载类的类名,如果是,则表明所述请求加载类需要自身加载;如果否,则表明所述请求加载类需要委托所述父加载器进行加载。
第三方面,本发明提供一种web应用类加载器,所述web应用类加载器包括上述任一项所述的应用类加载装置。
本发明实施例提供的应用类加载方法、装置及web应用类加载器,与现有技术相比,其通过动态可配置的类加载机制,能够灵活控制类加载方式,即在加载之前先通过读取不需要委托父加载器进行加载的类的类名集合,来确定所请求加载类的加载方式,即自身加载或委托父加载器进行加载,从而高效、便捷地完成应用的部署或迁移。
附图说明
图1为本发明一实施例应用类加载方法的流程图;
图2为本发明另一实施例应用类加载方法的流程图;
图3为本发明一实施例应用类加载装置的结构示意图;
图4为本发明另一实施例应用类加载装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种应用类加载方法,如图1所示,所述方法包括:
S11、获取类加载请求,所述类加载请求中包括请求加载类的类名;
S12、根据请求加载类的类名,判断所述请求加载类是否需要委托父加载器进行加载;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东中创软件工程股份有限公司,未经山东中创软件工程股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510960904.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种升级方法及电子设备
- 下一篇:移动终端的应用的运行状态的显示方法和装置