System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及数据库,具体涉及资源加载方法、装置、设备、存储介质。
技术介绍
1、随着科技的不断发展,数据库技术的应用场景大幅扩展,与此同时,资源加载作为计算机系统和软件应用中不可或缺的重要环节,对于保障数据库的正常运行和持续发展具有至关重要的意义。
2、针对上述问题,相关技术通常采用mybatis框架进行资源加载。该框架可以通过配置接口位置路径指定需要加载的数据库查询接口资源文件,通过注解信息加载指定的接口类文件。但是上述资源加载方法只能通过antpath路径匹配数据库查询接口资源文件和接口类文件进行加载,缺乏灵活性,不能细粒度的加载指定文件,使得在复杂的大型项目的调试中,仅仅为了调试单一功能却要加载大量的数据库查询接口资源文件和接口类文件,严重影响项目的启动速度,降低了开发效率。
3、因此,相关技术在资源加载时存在资源加载效率低的问题。
技术实现思路
1、有鉴于此,本公开提供了一种资源加载方法、装置、设备、存储介质,以解决相关技术在资源加载时存在资源加载效率低的问题。
2、第一方面,本公开提供了一种资源加载方法,该方法包括:
3、获取待加载资源对应的配置文件,配置文件中包括映射接口的接口位置路径;
4、扫描配置文件中的配置类,确定配置类中是否存在预设格式的注解信息;
5、若存在预设格式的注解信息,则获取注解信息对应的正则包路径和正则类名称;
6、按照正则包路径和正则类名称,确定与接口位置路径相匹配的
7、按照目标包中的接口进行资源加载。
8、在本公开实施例中,通过获取待加载资源对应的配置文件,配置文件中包括映射接口的接口位置路径;扫描配置文件中的配置类,确定配置类中是否存在预设格式的注解信息;若存在预设格式的注解信息,则获取注解信息对应的正则包路径和正则类名称;按照正则包路径和正则类名称,确定与接口位置路径相匹配的目标包;按照目标包中的接口进行资源加载。由于本公开实施例根据正则包路径和正则类名称对目标包中的接口进行资源加载,提高了资源加载效率。
9、在一种可选的实施方式中,按照正则包路径和正则类名称,确定与接口位置路径相匹配的目标包,包括:
10、按照正则包路径进行包扫描,得到与正则包路径相匹配的候选包;
11、基于正则类名称对候选包进行验证,确定候选包的接口与接口位置路径是否匹配;
12、若候选包的接口与接口位置路径匹配,则将候选包确定为目标包。
13、在本公开实施例中,通过按照正则包路径进行包扫描,得到与正则包路径相匹配的候选包,提高了候选包的资源加载效率。通过基于正则类名称对候选包进行验证,并在候选包的接口与接口位置路径匹配的情况下,将候选包确定为目标包,提高了目标包的资源加载效率。
14、在一种可选的实施方式中,按照目标包中的接口进行资源加载,包括:
15、获取接口类名对应的字典树;
16、按照字典树对目标包的接口进行查找,得到与目标包的接口相对应的目标接口类;
17、按照目标接口类加载资源文件。
18、在本公开实施例中,通过按照字典树对目标包的接口进行查找,按照与目标包的接口相对应的目标接口类加载资源文件,提高了资源文件的资源加载效率。
19、在一种可选的实施方式中,构建接口类名对应的字典树,包括:
20、获取接口类对应的名称前缀信息以及接口类文件;
21、基于名称前缀信息与接口类文件的对应关系,从名称前缀信息中提取根节点和多个子节点,其中,同一节点对应的子节点具有相同前缀;
22、按照根节点和多个子节点构建字典树。
23、在本公开实施例中,通过基于接口类对应的名称前缀信息与接口类文件的对应关系,按照从名称前缀信息中提取到的根节点和多个子节点构建字典树,能够避免遍历查找时的全局搜索,提高了资源文件的资源加载效率。
24、在一种可选的实施方式中,方法还包括:
25、读取配置文件中的接口位置路径;
26、按照接口位置路径加载数据库查询接口;
27、按照正则匹配规则对数据库查询接口进行校验,基于校验结果加载数据库查询接口对应的资源。
28、在本公开实施例中,通过按照接口位置路径加载数据库查询接口,并按照正则匹配规则对数据库查询接口进行校验,基于校验结果加载数据库查询接口对应的资源,提高了数据库查询接口资源的加载效率。
29、在一种可选的实施方式中,方法还包括:
30、若数据库查询接口通过校验,对配置类文件进行封装,得到资源类文件,资源类文件用于连接数据库资源;
31、将资源类文件对应的数据库查询接口加载到对应的目标包中,构建数据库查询接口与目标包的接口的映射关系;
32、利用映射关系检索数据库资源。
33、在本公开实施例中,通过在数据库查询接口通过校验的情况下,对配置类文件进行封装,得到资源类文件,实现了数据库查询接口资源文件的获取。通过将资源类文件对应的数据库查询接口加载到对应的目标包中,并构建数据库查询接口与目标包的接口的映射关系,实现了数据库查询接口与目标包的接口之间的映射。
34、在一种可选的实施方式中,方法还包括:
35、当在配置类中扫描到特定字符时,利用特定字符对应的匹配方式进行路径匹配,得到与特定字符相对应的目标路径。
36、在本公开实施例中,通过在配置类中扫描到特定字符的情况下,利用特定字符对应的匹配方式进行路径匹配,得到与特定字符相对应的目标路径,实现了对正则匹配方式的补充。
37、第二方面,本公开提供了一种资源加载装置,该装置包括:
38、第一获取模块,用于获取待加载资源对应的配置文件,配置文件中包括映射接口的接口位置路径;
39、第一确定模块,用于扫描配置文件中的配置类,确定配置类中是否存在预设格式的注解信息;
40、第二获取模块,用于若存在预设格式的注解信息,则获取注解信息对应的正则包路径和正则类名称;
41、第二确定模块,用于按照正则包路径和正则类名称,确定与接口位置路径相匹配的目标包;
42、第一加载模块,用于按照目标包中的接口进行资源加载。
43、第三方面,本公开提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的资源加载方法。
44、第四方面,本公开提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的资源加载方法。
45、第五方面,本公开提供了一种计算机程序产品,包括计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任本文档来自技高网...
【技术保护点】
1.一种资源加载方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述按照所述正则包路径和所述正则类名称,确定与所述接口位置路径相匹配的目标包,包括:
3.根据权利要求1或2所述的方法,其特征在于,所述按照所述目标包中的接口进行资源加载,包括:
4.根据权利要求3所述的方法,其特征在于,构建所述接口类名对应的字典树,包括:
5.根据权利要求1所述的方法,其特征在于,还包括:
6.根据权利要求5所述的方法,其特征在于,还包括:
7.根据权利要求1所述的方法,其特征在于,还包括:
8.一种资源加载装置,其特征在于,所述装置包括:
9.一种计算机设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至7中任一项所述的资源加载方法。
【技术特征摘要】
1.一种资源加载方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述按照所述正则包路径和所述正则类名称,确定与所述接口位置路径相匹配的目标包,包括:
3.根据权利要求1或2所述的方法,其特征在于,所述按照所述目标包中的接口进行资源加载,包括:
4.根据权利要求3所述的方法,其特征在于,构建所述接口类名对应的字典树,包括:
5.根据权利要求1所述的方法,其...
【专利技术属性】
技术研发人员:郭友光,黄创光,张杰,袁浩,何燕辉,葛海波,
申请(专利权)人:天翼云科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。