[发明专利]一种API接口复用发现的方法及装置有效
申请号: | 201911253479.9 | 申请日: | 2019-12-09 |
公开(公告)号: | CN111160403B | 公开(公告)日: | 2023-09-26 |
发明(设计)人: | 周生伟 | 申请(专利权)人: | 青岛聚好联科技有限公司 |
主分类号: | G06F18/22 | 分类号: | G06F18/22;G06F18/27 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 张怀阳 |
地址: | 266101 山*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 api 接口 发现 方法 装置 | ||
本发明公开了一种API接口复用发现的方法及装置,该方法包括扫描指定的工程代码,获取工程代码中各API接口所涉及的数据库表、对数据库表采取的操作以及采取的操作使用的执行条件,根据各API接口所涉及的数据库表、对数据库表采取的操作以及采取的操作使用的执行条件,生成各API接口的接口矩阵,根据各API接口的接口矩阵,确定出各API接口之间的相似度值,根据各API接口之间的相似度值,确定出各API接口之间的依赖关系。基于数据库表、对数据库表采取的操作以及采取的操作使用的执行条件得到的接口矩阵来计算各API接口之间的相似度,从而得到各API接口之间的依赖关系,进而可以通过依赖关系来检查接口是否可以复用。
技术领域
本发明实施例涉及智慧社区技术领域,尤其涉及一种API接口复用发现的方法及装置。
背景技术
当前web和app的前后端交互主要是基于http协议的前后端分离开发,加之微服务的流行,业务层面实现了高内聚,springboot等框架的流行极大的便利了java web apihttp接口的开发,导致接口开发爆发式增长,各个业务团队、各个团队中的各个小组并行工作。
首先,上述这种多人协作开发项目中,存在很多可以复用的业务逻辑,由于开发任务的分配不一定完全按照业务场景分配到同一开发人员或者某些业务场景依赖部分其他接口封装好的服务,所以存在重复接口开发的问题。
其次,项目因为存在依赖相同业务场景但是分属于不同开发人员的业务开发,开发人员对业务场景的理解不一致可能导致该业务场景产生不同的业务行为。
发明内容
本发明实施例提供一种API接口复用发现的方法及装置,用以实现在开发前检查是否有接口可以复用,在开发完成后检查开发接口是否存在业务不一致的缺陷bug的功能。
第一方面,本发明实施例提供一种API接口复用发现的方法,包括:
扫描指定的工程代码,获取所述工程代码中各API接口所涉及的数据库表、对数据库表采取的操作以及采取的操作使用的执行条件;
根据所述各API接口所涉及的数据库表、对数据库表采取的操作以及采取的操作使用的执行条件,生成所述各API接口的接口矩阵;
根据所述各API接口的接口矩阵,确定出所述各API接口之间的相似度值;
根据所述各API接口之间的相似度值,确定出所述各API接口之间的依赖关系。
上述技术方案中,通过基于数据库表、对数据库表采取的操作以及采取的操作使用的执行条件得到的接口矩阵来计算各API接口之间的相似度,从而得到各API接口之间的依赖关系,进而可以通过依赖关系来检查接口是否可以复用,以及是否存在业务不一致的缺陷。
可选的,所述根据所述各API接口所涉及的数据库表、对数据库表采取的操作以及采取的操作使用的执行条件,生成所述各API接口的接口矩阵,包括:
若所述各API接口的数据库表为单表,则依据所述数据库表、所述对数据库表采取的操作和采取的操作使用的执行条件,直接生成所述各API接口的接口矩阵;
若所述各API接口的数据库表为多表关联,则将关联的多个数据库表拆分为单表后,依据所述数据库表、所述对数据库表采取的操作和采取的操作使用的执行条件,生成所述各API接口的接口矩阵。
可选的,所述根据所述各API接口的接口矩阵,确定出所述各API接口之间的相似度值,包括:
根据所述各API接口的接口矩阵,确定出具有相同数据表和相同操作的接口矩阵行;
根据具有相同数据表和相同操作的接口矩阵行中的执行条件出现的次数,确定出数据表的相似度值;
将所有数据表的相似度值相加,确定为所述各API接口之间的相似度值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛聚好联科技有限公司,未经青岛聚好联科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911253479.9/2.html,转载请声明来源钻瓜专利网。