CN108108483B - 基于SpringAop拦截DAO层校验SQL的方法、装置和系统 - Google Patents
基于SpringAop拦截DAO层校验SQL的方法、装置和系统 Download PDFInfo
- Publication number
- CN108108483B CN108108483B CN201810017058.5A CN201810017058A CN108108483B CN 108108483 B CN108108483 B CN 108108483B CN 201810017058 A CN201810017058 A CN 201810017058A CN 108108483 B CN108108483 B CN 108108483B
- Authority
- CN
- China
- Prior art keywords
- information
- dao layer
- mapping information
- database
- dao
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
Abstract
本发明公开了一种基于SpringAop拦截DAO层校验SQL的方法,包括以下步骤:响应于项目启动的动作,加载数据库表信息,解析成特定格式的映射信息并暂存在项目内;借助Spring的Aop技术,在DAO层的方法名被调用时,根据方法名获取其参数信息,采用所述映射信息对参数信息做校验,得到校验结果。采用本发明的方法,可以使得不合法的SQL错误提前暴露,不会渗入数据库,而是在代码层就收集到异常信息,继而抛出自定义的异常,或者缓存起来做为分析依据;依据“约定优于配置”原则的同时,为了满足用户自身特色,提供自定义扩展服务,提高了异常排查的效率,在大量用户请求访问的情况下,减轻了数据库执行非法SQL的消耗。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及了一种基于SpringAop拦截DAO层校验SQL的方法、装置和系统。
背景技术
自数据库诞生以来,数据库已经成为计算机领域及其重要的一个组成部分。人们把各种数据存放在数据库里,通过不同的内容、不同的类型或者不同的格式来存储,数据库的读写一直以来都是一个很重要的方面,安全可靠,高效的读写策略才能为项目提供数据支撑。不管是众多的ORM框架,还是JDBC,最终都是把SQL语句传输给DB执行,然后返回结果集。那我们可以对组装好的SQL语句进行校验,通过后再进入DB执行。
开源框架hibernate(对象关系映射框架)一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系。开源框架hibernate是一个比较重型的ORM框架,组建很多,HQL(查询语言)更是一更双刃剑,不能满足日益增长的个性化需求。在目前流行的分布式微服务中,更倾向于使用更加灵活小巧的MyBatis,但是MyBatis并没有提供把POJO与数据库表映射在一起的方式,存在缺点:项目对数据库进行读写请求时,数据库会进行语法校验,对非法的SQL会报错误,相对应的spring等框架会收集这写错误然后转化为java异常在项目中抛出,不利于研发人员对错误的定位和解决。
发明内容
本发明针对现有技术中的缺点,提供了一种基于SpringAop拦截DAO层校验SQL的方法、装置和系统。
为了解决上述技术问题,本发明通过下述技术方案得以解决:
本发明披露了如下方案:
一种基于SpringAop拦截DAO层校验SQL的方法,包括以下步骤:
响应于项目启动的动作,加载数据库表信息,解析成特定格式的映射信息并暂存在项目内;
借助Spring的Aop技术,在DAO层的方法名被调用时,根据方法名获取其参数信息,采用所述映射信息对参数信息做校验,得到校验结果。
作为一种可实施方式,所述响应于项目启动的动作,加载数据库表信息,解析成特定格式的映射信息并暂存在项目内具体是指:
项目启动时,从Spring容器中获取SqlSessionFactory,并通过SqlSessionFactory得到数据源信息;
通过数据源信息解析出数据库中所有数据库表的结构,通过所述数据库表的结构生成项目内代码对象和数据库表的映射信息,并将所述映射信息暂存在项目内。
作为一种可实施方式,所述借助Spring的Aop技术,在DAO层的方法名被调用时,根据方法名获取其参数信息,采用所述映射信息对参数信息做校验,得到校验结果具体是指:
通过Spring中的AOP配置出DAO层的拦截器;
通过所述拦截器对所有来自DAO层的请求进行拦截,拦截之后获取到DAO层的方法名;
若方法名包含在数据库内写入的参数,则采用映射信息和参数信息作对比,得到校验结果。
作为一种可实施方式,若DAO层的方法名不存在在数据库内写入的参数,则对添加注解并定义别名,采用映射信息和所述定义的别名进行比较,得到校验结果。
作为一种可实施方式,校验结果包括:
若校验通过,则继续请求内容;或,
若校验不通过,则抛出自定义的异常信息;或,
若某些DAO层不需被拦截校验,则可在方法名上加@SkipCheck注解,自动略过校验过程。
本发明还披露了:
一种基于SpringAop拦截DAO层校验SQL的装置,包括加载解析模块和获取校验模块;
所述加载解析模块用于响应于项目启动的动作,加载数据库表信息,解析成特定格式的映射信息并暂存在项目内;
所述获取校验模块用于借助Spring的Aop技术,在DAO层的方法名被调用时,根据方法名获取其参数信息,采用所述映射信息对参数信息做校验,得到校验结果。
作为一种可实施方式,所述加载解析模块包括加载单元和解析单元;
所述加载单元用于项目启动时,从Spring容器中获取SqlSessionFactory,并通过SqlSessionFactory得到数据源信息;
所述解析单元用于通过数据源信息解析出数据库中所有数据库表的结构,通过所述数据库表的结构生成项目内代码对象和数据库表的映射信息,并将所述映射信息暂存在项目内。
作为一种可实施方式,所述获取校验模块包括配置单元、获取单元和校验单元;
所述配置单元用于通过Spring中的AOP配置出DAO层的拦截器;
所述获取单元用于通过所述拦截器对所有来自DAO层的请求进行拦截,拦截之后获取到DAO层的方法名;
所述校验单元用于若方法名包含在数据库内写入的参数,则采用映射信息和参数信息作对比,得到校验结果。
本发明还披露了:
一种基于SpringAop拦截DAO层校验SQL的系统,包括上述基于SpringAop拦截DAO层校验SQL的装置。
本发明还披露了:
一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现上述所述方法的步骤。
本发明由于采用了以上技术方案,具有显著的技术效果:
采用本发明的方法,可以使得不合法的SQL错误提前暴露,不会渗入数据库,而是在代码层就收集到异常信息,继而抛出自定义的异常,或者缓存起来做为分析依据;依据“约定优于配置”原则的同时,为了满足用户自身特色,提供自定义扩展服务,提高了异常排查的效率,在大量用户请求访问的情况下,减轻了数据库执行非法SQL的消耗。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的整体流程示意图;
图2是本发明的部分流程的详细操作示意图;
图3是本发明的另一部分流程的详细操作示意图;
图4是本发明的基于SpringAop拦截DAO层校验SQL的方法的时序图;
图5是本发明的整体结构示意图;
图6显示了根据本发明的一个实施例的基于SpringAop拦截DAO层校验SQL的系统结构示意图。
标号说明:100、加载解析模块;200、获取校验模块;101、加载单元;102、解析单元;201、配置单元;202、获取单元;203、校验单元;3、基于SpringAop拦截DAO层校验SQL的装置。
具体实施方式
下面结合实施例对本发明做进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。
本发明提出了一种基于SpringAop拦截Dao层请求校验SQL的方法来提高对SQL异常的拦截和分析,项目对数据库进行读写请求时,数据库会进行语法校验,对非法的SQL会报错误,相对应的spring等框架会收集这写错误然后转化为java异常在项目中抛出,不利于研发人员对错误的定位和解决。基于上述原因,提出了一种基于SpringAop拦截Dao层请求校验SQL的技术实现方案来解决这个问题。
采用本发明的方法,可以使得不合法的SQL错误提前暴露,不会渗入数据库,而是在代码层就收集到异常信息,继而抛出自定义的异常,或者缓存起来做为分析依据;依据“约定优于配置”原则的同时,为了满足用户自身特色,提供自定义扩展服务,提高了异常排查的效率,在大量用户请求访问的情况下,减轻了数据库执行非法SQL的消耗。
一种基于SpringAop拦截DAO层校验SQL的方法,如图1所示,包括以下步骤:
S100,响应于项目启动的动作,加载数据库表信息,解析成特定格式的映射信息并暂存在项目内;
S200,借助Spring的Aop技术,在DAO层的方法名被调用时,根据方法名获取其参数信息,采用所述映射信息对参数信息做校验,得到校验结果。
更进一步地,在步骤S100中,所述响应于项目启动的动作,加载数据库表信息,解析成特定格式的映射信息并暂存在项目内具体是指:
S101,项目启动时,从Spring容器中获取SqlSessionFactory,并通过SqlSessionFactory得到数据源信息;
S102,通过数据源信息解析出数据库中所有数据库表的结构,通过所述数据库表的结构生成项目内代码对象和数据库表的映射信息,并将所述映射信息暂存在项目内。
通俗的讲,在项目启动时,从spring容器里面获取SqlSessionFactory,进一步拿到数据源信息,解析出所有表的结构,结构包括了表名、列名、长度、类型、备注等;根据“下划线”转“驼峰”的命名规范,生成与表结构对应的java内容,这个就是所说的映射信息,将这些映射信息暂存在项目内。
更进一步地,在步骤S200中,所述借助Spring的Aop技术,在DAO层的方法名被调用时,根据方法名获取其参数信息,采用所述映射信息对参数信息做校验,得到校验结果具体是指:
S201,通过Spring中的AOP配置出DAO层的拦截器;
S202,通过所述拦截器对所有来自DAO层的请求进行拦截,拦截之后获取到DAO层的方法名;
S203,若方法名包含在数据库内写入的参数,则采用映射信息和参数信息作对比,得到校验结果。
此过程可具体实现为:通过SpringAop配置一个DAO层的@Around拦截器,把所有DAO层请求都拦截下来,通过joinPoint.getSignature().getName()获取到方法名,若方法名包含”insert”,”save”,”create”等明确数据库写的字符,则对入参进行校验,否则直接略过。所说的校验就是入参内容与S100中生成的映射信息做比对,对比的内容主要是:参数类型、参数长度等。
在步骤200中还包括此步骤:若DAO层的方法名不存在在数据库内写入的参数,则对添加注解并定义别名,采用映射信息和所述定义的别名进行比较,得到校验结果。此过程是讲:如果某些类名、参数名没有按照归来来定义,可以加@AliasCheck(name=””)注解,定义别名,此别名仅会在校验的时候用得到。
更具体地,校验结果包括:若校验通过,则继续请求内容;或,
若校验不通过,则抛出自定义的异常信息;或,
若某些DAO层不需被拦截校验,则可在方法名上加@SkipCheck注解,自动略过校验过程。
也就是说:如果校验通过则执行joinPoint.proceed(),继续请求内容;
如果校验不通过,就抛出一个自定义的异常CheckSqlException。其目的是提供CheckFalseHandle接口,供使用者进行功能扩展,CheckFalseHandle.setMassage()自定义异常信息,CheckFalseHandle.doSthe()补偿操作,CheckFalseHandle.cache()缓存错误日志等;
亦或者如果某些DAO层不想被拦截校验,可以加@SkipCheck注解,加注解之后可以自动略过校验过程。
通过以上所有的步骤,实现了一种基于SpringAop拦截DAO层校验SQL的方法的整个完善的方法,具体时序图参见附图4。
本发明还披露了一个实施例:
一种基于SpringAop拦截DAO层校验SQL的装置,如图5所示,包括加载解析模块100和获取校验模块200;
所述加载解析模块100用于响应于项目启动的动作,加载数据库表信息,解析成特定格式的映射信息并暂存在项目内;
所述获取校验模块200用于借助Spring的Aop技术,在DAO层的方法名被调用时,根据方法名获取其参数信息,采用所述映射信息对参数信息做校验,得到校验结果。
更具体地,所述加载解析模块100包括加载单元101和解析单元102;
所述加载单元101用于项目启动时,从Spring容器中获取SqlSessionFactory,并通过SqlSessionFactory得到数据源信息;
所述解析单元102用于通过数据源信息解析出数据库中所有数据库表的结构,通过所述数据库表的结构生成项目内代码对象和数据库表的映射信息,并将所述映射信息暂存在项目内。
另外,所述获取校验模块200包括配置单元201、获取单元202和校验单元203;
所述配置单元201用于通过Spring中的AOP配置出DAO层的拦截器;
所述获取单元202用于通过所述拦截器对所有来自DAO层的请求进行拦截,拦截之后获取到DAO层的方法名;
所述校验单元203用于若方法名包含在数据库内写入的参数,则采用映射信息和参数信息作对比,得到校验结果。
本发明还披露了一个实施例:
一种基于SpringAop拦截DAO层校验SQL的系统,如图6所示,包括上述基于SpringAop拦截DAO层校验SQL的装置3。
另外,本发明的实施例还包括:一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现以上一种基于SpringAop拦截DAO层校验SQL的方法。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
需要说明的是:
说明书中提到的“一个实施例”或“实施例”意指结合实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,说明书通篇各个地方出现的短语“一个实施例”或“实施例”并不一定均指同一个实施例。
此外,需要说明的是,本说明书中所描述的具体实施例,其零、部件的形状、所取名称等可以不同。凡依本发明专利构思所述的构造、特征及原理所做的等效或简单变化,均包括于本发明专利的保护范围内。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离本发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。
Claims (8)
1.一种基于SpringAop拦截DAO层校验SQL的方法,其特征在于,包括以下步骤:
响应于项目启动的动作,加载数据库表信息,解析成特定格式的映射信息并暂存在项目内;
借助Spring的Aop技术,在DAO层的方法名被调用时,根据方法名获取其参数信息,采用所述映射信息对参数信息做校验,得到校验结果,具体是指:
通过Spring中的AOP配置出DAO层的拦截器;
通过所述拦截器对所有来自DAO层的请求进行拦截,拦截之后获取到DAO层的方法名;
若方法名包含在数据库内写入的参数,则采用映射信息和参数信息作对比,得到校验结果。
2.根据权利要求1所述的基于SpringAop拦截DAO层校验SQL的方法,其特征在于,所述响应于项目启动的动作,加载数据库表信息,解析成特定格式的映射信息并暂存在项目内具体是指:
项目启动时,从Spring容器中获取SqlSessionFactory,并通过SqlSessionFactory得到数据源信息;
通过数据源信息解析出数据库中所有数据库表的结构,通过所述数据库表的结构生成项目内代码对象和数据库表的映射信息,并将所述映射信息暂存在项目内。
3.根据权利要求1所述的基于SpringAop拦截DAO层校验SQL的方法,其特征在于,若DAO层的方法名不存在在数据库内写入的参数,则对添加注解并定义别名,采用映射信息和所述定义的别名进行比较,得到校验结果。
4.根据权利要求3所述的基于SpringAop拦截DAO层校验SQL的方法,其特征在于,校验结果包括:
若校验通过,则继续请求内容;或,
若校验不通过,则抛出自定义的异常信息;或,
若某些DAO层不需被拦截校验,则可在方法名上加@SkipCheck注解,自动略过校验过程。
5.一种基于SpringAop拦截DAO层校验SQL的装置,其特征在于,包括加载解析模块和获取校验模块;
所述加载解析模块用于响应于项目启动的动作,加载数据库表信息,解析成特定格式的映射信息并暂存在项目内;
所述获取校验模块用于借助Spring的Aop技术,在DAO层的方法名被调用时,根据方法名获取其参数信息,采用所述映射信息对参数信息做校验,得到校验结果;
所述获取校验模块包括配置单元、获取单元和校验单元;
所述配置单元用于通过Spring中的AOP配置出DAO层的拦截器;
所述获取单元用于通过所述拦截器对所有来自DAO层的请求进行拦截,拦截之后获取到DAO层的方法名;
所述校验单元用于若方法名包含在数据库内写入的参数,则采用映射信息和参数信息作对比,得到校验结果。
6.根据权利要求5所述的基于SpringAop拦截DAO层校验SQL的装置,其特征在于,所述加载解析模块包括加载单元和解析单元;
所述加载单元用于项目启动时,从Spring容器中获取SqlSessionFactory,并通过SqlSessionFactory得到数据源信息;
所述解析单元用于通过数据源信息解析出数据库中所有数据库表的结构,通过所述数据库表的结构生成项目内代码对象和数据库表的映射信息,并将所述映射信息暂存在项目内。
7.一种基于SpringAop拦截DAO层校验SQL的系统,其特征在于,包括6-8任一项权利要求所述的基于SpringAop拦截DAO层校验SQL的装置。
8.一种计算机可读存储介质,其存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-4任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810017058.5A CN108108483B (zh) | 2018-01-09 | 2018-01-09 | 基于SpringAop拦截DAO层校验SQL的方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810017058.5A CN108108483B (zh) | 2018-01-09 | 2018-01-09 | 基于SpringAop拦截DAO层校验SQL的方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108108483A CN108108483A (zh) | 2018-06-01 |
CN108108483B true CN108108483B (zh) | 2021-02-09 |
Family
ID=62219556
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810017058.5A Active CN108108483B (zh) | 2018-01-09 | 2018-01-09 | 基于SpringAop拦截DAO层校验SQL的方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108108483B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110413442A (zh) * | 2019-07-08 | 2019-11-05 | 浙江数链科技有限公司 | 参数校验方法和装置 |
CN111191246A (zh) * | 2019-12-19 | 2020-05-22 | 杭州安恒信息技术股份有限公司 | 一种基于Spring注解的安全开发校验方法 |
CN111130880B (zh) * | 2019-12-24 | 2023-04-07 | 杭州米络星科技(集团)有限公司 | 一种微服务体系异常机制传递方法 |
CN113722392A (zh) * | 2020-05-26 | 2021-11-30 | 北京达佳互联信息技术有限公司 | 数据同步方法和装置、数据同步系统、服务器、存储介质 |
CN114238527A (zh) * | 2022-02-24 | 2022-03-25 | 安翰科技(武汉)股份有限公司 | 基于对象关系映射的数据处理方法和数据处理装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102682047A (zh) * | 2011-10-18 | 2012-09-19 | 国网电力科学研究院 | 一种混合的sql注入防护方法 |
CN105354181A (zh) * | 2015-09-24 | 2016-02-24 | 四川长虹电器股份有限公司 | Xbrl文档的校验及纠错定位方法 |
CN105373536A (zh) * | 2014-08-19 | 2016-03-02 | 阿里巴巴集团控股有限公司 | 一种实现dao接口的方法及装置 |
CN105677326A (zh) * | 2015-12-28 | 2016-06-15 | 国云科技股份有限公司 | 一种软件接口参数验证方法 |
CN106355094A (zh) * | 2016-07-08 | 2017-01-25 | 耿童童 | 一种基于语法变换的sql注入攻击防御系统及防御方法 |
US9589085B1 (en) * | 2014-12-03 | 2017-03-07 | Cadence Design Systems, Inc. | Systems and methods for viewing analog simulation check violations in an electronic design automation framework |
CN106940695A (zh) * | 2016-01-05 | 2017-07-11 | 阿里巴巴集团控股有限公司 | 数据源信息的校验方法及装置 |
CN106951231A (zh) * | 2017-02-23 | 2017-07-14 | 微梦创科网络科技(中国)有限公司 | 一种计算机软件开发方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060041584A1 (en) * | 2004-06-07 | 2006-02-23 | Dirk Debertin | System and method for communicating with a structured query language statement generator |
CN104572979B (zh) * | 2014-12-31 | 2018-09-11 | 北京锐安科技有限公司 | 一种处理结构化查询语言sql的方法及装置 |
-
2018
- 2018-01-09 CN CN201810017058.5A patent/CN108108483B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102682047A (zh) * | 2011-10-18 | 2012-09-19 | 国网电力科学研究院 | 一种混合的sql注入防护方法 |
CN105373536A (zh) * | 2014-08-19 | 2016-03-02 | 阿里巴巴集团控股有限公司 | 一种实现dao接口的方法及装置 |
US9589085B1 (en) * | 2014-12-03 | 2017-03-07 | Cadence Design Systems, Inc. | Systems and methods for viewing analog simulation check violations in an electronic design automation framework |
CN105354181A (zh) * | 2015-09-24 | 2016-02-24 | 四川长虹电器股份有限公司 | Xbrl文档的校验及纠错定位方法 |
CN105677326A (zh) * | 2015-12-28 | 2016-06-15 | 国云科技股份有限公司 | 一种软件接口参数验证方法 |
CN106940695A (zh) * | 2016-01-05 | 2017-07-11 | 阿里巴巴集团控股有限公司 | 数据源信息的校验方法及装置 |
CN106355094A (zh) * | 2016-07-08 | 2017-01-25 | 耿童童 | 一种基于语法变换的sql注入攻击防御系统及防御方法 |
CN106951231A (zh) * | 2017-02-23 | 2017-07-14 | 微梦创科网络科技(中国)有限公司 | 一种计算机软件开发方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108108483A (zh) | 2018-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108108483B (zh) | 基于SpringAop拦截DAO层校验SQL的方法、装置和系统 | |
US8832125B2 (en) | Extensible event-driven log analysis framework | |
US20060271510A1 (en) | Database Caching and Invalidation using Database Provided Facilities for Query Dependency Analysis | |
KR20170019352A (ko) | 데이터 질의 방법 및 장치 | |
KR101919771B1 (ko) | 데이터베이스 애플리케이션을 위한 최적화 기법 | |
US11675690B2 (en) | Lineage-driven source code generation for building, testing, deploying, and maintaining data marts and data pipelines | |
CN110175163A (zh) | 基于业务功能智能解析的多库分离方法、系统及介质 | |
US11487742B2 (en) | Consistency checks between database systems | |
US9128962B2 (en) | View based table replacement for applications | |
CN102981947A (zh) | 一种测试中准备数据的方法及系统 | |
KR102099157B1 (ko) | 빅데이터의 전처리 방법 및 장치 | |
US9390111B2 (en) | Database insert with deferred materialization | |
CN108664657A (zh) | 一种大数据任务调度方法、电子设备、存储介质及平台 | |
US10324933B2 (en) | Technique for processing query in database management system | |
CN114860654A (zh) | 一种基于Flink数据流的Iceberg表Schema动态变更方法及系统 | |
CN114116691A (zh) | 数据导入校验方法、系统、装置及计算机可读介质 | |
CN105867886B (zh) | 一种写表格的方法及装置 | |
US11176314B2 (en) | XML schema description code generator | |
CN107220265B (zh) | 一种数据库语句编译和执行方法及装置 | |
WO2017092355A1 (zh) | 一种数据服务系统 | |
CA3048699C (en) | Join pattern agnostic aggregate computation in database query operations | |
US11100131B2 (en) | Simulation of a synchronization of records | |
US11188228B1 (en) | Graphing transaction operations for transaction compliance analysis | |
US8321844B2 (en) | Providing registration of a communication | |
US20110137959A1 (en) | Representing relational schema information using generic meta schemas |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |