首页> 中国专利> 一种基于struts2拦截器的动态拦截器管理方法

一种基于struts2拦截器的动态拦截器管理方法

摘要

本发明涉及web项目领域,特别是一种基于struts2拦截器的动态拦截器管理方法。本发明首先创建一个struts2拦截器,用于执行自定义的拦截器组;拦截器组是自定义的一个具有多种属性的抽象类,包括优先级,拦截url;然后创建加载器模块,用于动态加载web项目,并在线动态更新拦截器组中的拦截器。通过自定义的动态拦截器,可以在线升级web项目中的拦截模块,提供web项目安全性和提供服务稳定性;方便扩展,提高开发人员的开发效率。

著录项

  • 公开/公告号CN106599156A

    专利类型发明专利

  • 公开/公告日2017-04-26

    原文格式PDF

  • 申请/专利权人 国云科技股份有限公司;

    申请/专利号CN201611118032.7

  • 发明设计人 钟健波;杨松;季统凯;

    申请日2016-12-07

  • 分类号G06F17/30(20060101);G06F9/445(20060101);

  • 代理机构广东莞信律师事务所;

  • 代理人余伦

  • 地址 523808 广东省东莞市松山湖科技产业园区松科苑14号楼

  • 入库时间 2023-06-19 02:00:58

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-05-21

    授权

    授权

  • 2019-05-10

    著录事项变更 IPC(主分类):G06F16/958 变更前: 变更后: 申请日:20161207

    著录事项变更

  • 2017-05-24

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20161207

    实质审查的生效

  • 2017-04-26

    公开

    公开

说明书

技术领域

本发明涉及web应用领域,特别是一种基于struts2拦截器的动态拦截器管理方法。

背景技术

Web应用中,需要对接口进行一些公共的操作,例如参数校验,权限控制等等。一般是通过新建一个拦截器进行统一的处理。拦截器的使用过程中还是会有遇到以下的一些问题:

一是每增加一个拦截器,需要重新修改配置文件,增加对应的拦截器配置信息。

二是增加了拦截器后需要重启web应用,拦截器才能正常的执行拦截的工作。

发明内容

本发明解决的技术问题在于提供一种基于struts2拦截器的动态拦截器管理方法,解决了web应用在线更新,减少web应用的运维难度,提高web应用开发效率。

本发明解决上述技术问题的技术方案是:

所述的的方法具体包括以下步骤:

步骤1:创建一个struts2拦截器,并配置好对应的struts配置文件,web启动时,拦截器能正常运行;

步骤2:创建自定义的拦截器抽象类;

步骤3:根据步骤2的抽象类,实现具体的拦截逻辑;

步骤4:创建加载模块,自动扫描web项目下特定包路径下的文件加载到内存;

步骤5:启动web项目,加载模块加载所有自定义拦截器到内存中;

步骤6:调用web应用接口,拦截器的调用模块获取内存中所有自定义拦截器,并根据优先级排序;

步骤7:循环每个拦截器,根据接口url判断是否匹配自定义拦截器url,若匹配,执行步骤8,否则执行步骤9;

步骤8:执行拦截器逻辑,若执行通过,返回true,否则抛错;

步骤9:执行原有接口逻辑,返回给用户;

步骤10:判断接口是否更新拦截器,若是执行步骤11,否则,执行步骤12;

步骤11:加载模块扫描指定包路径下文件,加载到内存中;

步骤12:结束。

所述的拦截逻辑是当需要拦截的接口url为*时拦截所有的接口。

所述的加载模块在web项目启动时执行,扫描指定包路径下的代码文件,判断是否自定义拦截器的实现类,若是则添加到内存中,否则,继续扫描;

首次加载完后,接口调用更新时,调用加载模块,对特定包路径代码文件扫描更新;更新前不会影响原来在内存中的拦截器;在更新时保证web应用能正常的运作、提供服务。

所述的优先级,是自定义的拦截器的属性,优先级为0,代表优先级最小,数字越大,优先级越大,先执行优先级高的拦截器。

拦截器中配置需要拦截的url,当匹配到正确的url才进行拦截,其余的直接返回;当配置为*时,拦截所有的url。

本发明解决了解决了web应用在线更新,解决了web应用在线更新,提高web应用开发效率。

附图说明

下面结合附图对本发明进一步说明:

图1为本发明方法拦截器工作流程图。

具体实施方法

如图1所示,本发明首先启动web应用,加载代码中拦截器实现类,实现类再进行工作:

创建自定义的拦截器

添加自定义的拦截器模板

Web应用启动时候扫描特定包中实现代码添加到内存中

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号