一种基于Mybatis实现可配置的动态SQL的方法技术

技术编号:38460243 阅读:23 留言:0更新日期:2023-08-11 14:37
本发明专利技术提供了一种基于Mybatis实现可配置的动态SQL的方法,包括以下步骤:S1、按照Mybatis的语法在界面配置好动态SQL,并校验相应的SQL语句是否符合Mybatis的规范,校验通过后存储于数据库表中;S2、根据步骤S1生成一个唯一的SelectId;S3、以步骤S2中的SelectId为key遍历MappedStatement列表;S4、设置新建的MappedStatement中SQL返回的参数类型为Map.class;S5、如果SQL发生变更,重新读取所有的MappedStatement对象,MappedStatement列表中存在相同的SelectId,则代表需要修改。本发明专利技术有益效果:一种基于Mybatis实现可配置的动态SQL的方法,支持在使用Mybatis的情况下,能够通过界面刷新SQL语句,解决动态修改的问题。解决动态修改的问题。解决动态修改的问题。

【技术实现步骤摘要】
一种基于Mybatis实现可配置的动态SQL的方法


[0001]本专利技术属于通用后端
,尤其是涉及一种基于Mybatis实现可配置的动态SQL的方法。

技术介绍

[0002]在业务系统开发的过程中,经常会遇到需要动态修改SQL的情况,并且不能重启应用程序。而Mybatis作为基于Java的持久层框架,支持手写SQL、调用存储过程等特性,在使用过程中,一般使用xml配置好需要拼接的动态SQL,或者通过注解的形式来配置动态SQL以及对应的映射信息,然后通过这些配置信息来执行SQL语句并返回相应的结果。但这些已经配置好的SQL语句无法在程序运行过程中进行修改,无法应对SQL动态调整的情况。同时由于管理系统项目中各个功能节点均有列表查询,分页查询等基础功能,将每个功能列表查询的SQL通过页面进行动态配置,将大幅提升后端人员的开发效率。

技术实现思路

[0003]有鉴于此,本专利技术旨在提出一种基于Mybatis实现可配置的动态SQL的方法,通过Mybatis的动态SQL功能,在程序启动时将预先配置好的SQL语句加载进Mybati本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于Mybatis实现可配置的动态SQL的方法,其特征在于,包括以下步骤:S1、按照Mybatis的语法在界面配置好动态SQL,并校验相应的SQL语句是否符合Mybatis的规范,校验通过后存储于数据库表中;S2、根据步骤S1生成一个唯一的SelectId;S3、以步骤S2中的SelectId为key遍历MappedStatement列表;S4、设置新建的MappedStatement中SQL返回的参数类型为Map.class;S5、如果SQL发生变更,重新读取所有的MappedStatement对象,MappedStatement列表中存在相同的SelectId,则代表需要修改。2.根据权利要求1所述的一种基于Mybatis实现可配置的动态SQL的方法,其特征在于,在步骤S1中,通过步骤S1中提及的SQL的使用场景,SQL名称参数生成一个唯一的SelectId。3.根据权利要求1所述的一种基于Mybatis实现可配置的动态SQL的方法,其特征在于,在步骤S3中,在程序启动时通过Mybatis的SqlSessionFactory读取到Mybatis对应的配置,获取到所有的MappedStatement对象。4.根据权利要求1所述的一种基于Mybatis实现可配置的动态SQL的方法,其特...

【专利技术属性】
技术研发人员:邹虎
申请(专利权)人:紫光云技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1