本发明涉及一种热部署实现方法,尤其是一种基于java web的热部署实现方法。
背景技术:
:
目前,作为与科技建设工作同等重要的运维工作,已被逐渐重视起来。如何节约运维的成本、提高运维的效率、保障运维的安全,这是一个很广阔的课题。而部署作为运维中必不可少的一环,关系着最为关键的系统的稳定运行,格外受到关注。目前,基于Java开发的web项目在各大企业中较多。而Java web项目的热部署实现存在效率较低,实现难度较大等问题,在实践操作中,每一次对系统进行更新或升级,都需要进行重启后才能完成整个更新升级步骤,大部分的时间都消耗在重新启动上,极大的浪费了研发时间。
技术实现要素:
:
本发明提供了一种基于java web的热部署实现方法,它设计合理,基于过滤器可对所有request请求进行拦截处理的机制进行展开,在部署Java web项目的过程中提高了部署效率、降低了部署难度,解决了现有技术中存在的问题。
本发明为解决上述技术问题所采用的技术方案是:
一种基于java web的热部署实现方法,步骤包括:
(1)将自定义的classloader注册到转化处理器UriDispatcher机制中,所述自定义的classloader用于对新资源包进行加载,将转化处理器UriDispatcher注册到过滤器机制中,所述自定义的转化处理器UriDispatcher用于拦截request请求;
(2)客户端浏览器发出http请求URL时,filter接口的过滤器类abstractsystemfilter截获这个URL;
(3)MVC分发器根据步骤(2)中截获的URL映射找出具体的业务逻辑处理类class;
(4)在abstractsystemfilter类中的classloader将步骤(3)中的类class加载到内存中,完成热部署。
本发明采用上述结构,它设计合理,基于过滤器可对所有request请求进行拦截处理的机制进行展开,在部署Java web项目的过程中提高了部署效率、降低了部署难度,在系统运行的同时即可完成更新升级,可在用户未感知系统中断的情况下增加新业务模块和修正已有缺陷,大大提高了用户使用系统的体验。
具体实施方式:
为能清楚说明本方案的技术特点,下面通过具体实施方式,对本发明进行详细阐述。
一种基于java web的热部署实现方法,步骤包括:
(1)将自定义的classloader注册到转化处理器UriDispatcher机制中,所述自定义的classloader用于对新资源包进行加载,将转化处理器UriDispatcher注册到过滤器机制中,所述自定义的转化处理器UriDispatcher用于拦截request请求;
(2)客户端浏览器发出http请求URL时,filter接口的过滤器类abstractsystemfilter截获这个URL;
(3)MVC分发器根据步骤(2)中截获的URL映射找出具体的业务逻辑处理类class;
(4)在abstractsystemfilter类中的classloader将步骤(3)中的类class加载到内存中,完成热部署。
本发明采用上述设计,基于过滤器可对所有request请求进行拦截处理的机制进行展开,在部署Java web项目的过程中提高了部署效率、降低了部署难度。
上述具体实施方式不能作为对本发明保护范围的限制,对于本技术领域的技术人员来说,对本发明实施方式所做出的任何替代改进或变换均落在本发明的保护范围内。
本发明未详述之处,均为本技术领域技术人员的公知技术。