CN108121542B - 一种基于MyBatis的SQL语句的配置方法、*** - Google Patents

一种基于MyBatis的SQL语句的配置方法、*** Download PDF

Info

Publication number
CN108121542B
CN108121542B CN201711143542.4A CN201711143542A CN108121542B CN 108121542 B CN108121542 B CN 108121542B CN 201711143542 A CN201711143542 A CN 201711143542A CN 108121542 B CN108121542 B CN 108121542B
Authority
CN
China
Prior art keywords
mybatis
sql
configuration file
database
framework
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
Application number
CN201711143542.4A
Other languages
English (en)
Other versions
CN108121542A (zh
Inventor
黄劲聪
黄衍博
叶浩斌
黄燕飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Eflycloud Computing Co Ltd
Original Assignee
Guangdong Eflycloud Computing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangdong Eflycloud Computing Co Ltd filed Critical Guangdong Eflycloud Computing Co Ltd
Priority to CN201711143542.4A priority Critical patent/CN108121542B/zh
Publication of CN108121542A publication Critical patent/CN108121542A/zh
Application granted granted Critical
Publication of CN108121542B publication Critical patent/CN108121542B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种基于MyBatis的SQL语句的配置方法、***,包括MyBatis框架、核心配置文件、映射配置文件和数据库,包括MyBatis框架对数据库进行操作的过程:步骤A:在java项目中引入MyBatis框架依赖库和数据库的驱动;步骤B:对核心配置文件进行编写;步骤C:创建映射配置文件,映射配置文件把SQL语句作为参数传输进MyBatis框架中,MyBatis框架对SQL语句进行参数解析并对数据库执行操作;步骤D:根据不同类型的数据库,通过ID制定SQL语句,读取配置好的SQL语句并执行语句,最后获取结果。本发明解决在使用MyBatis的时候,配置SQL时需要进行多处繁琐配置的问题,实现缩短开发时间,增加开发灵活性和提高开发效率的效果。

Description

一种基于MyBatis的SQL语句的配置方法、***
技术领域
本发明涉及MyBatis框架的SQL处理技术领域,尤其涉及一种基于MyBatis的SQL语句的配置方法、***。
背景技术
MyBatis是一个基于java的持久层框架,它支持定制化SQL、存储规程以及高级映射。MyBAtis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBAtis可以使用简单的XML或注解来配置和映射原生信息,将接口和java的POJOs映射成数据库中的记录。
在使用MyBAtis的过程中,每次使用新的SQL语句的时候,都需要查看有无相应的映射文件以及数据表对应的实体类,如果没有则需要创建,并在相应的文件中,配置SQL和相关设置,配置的过程十分繁琐。
发明内容
本发明的目的在于提出一种基于MyBatis的SQL语句的配置方法、***,用MyBatis的SQL语句参数解析功能,解决在使用MyBatis的时候,配置SQL时需要进行多处繁琐配置的问题,实现缩短开发时间,增加开发灵活性和提高开发效率的效果。
为达此目的,本发明采用以下技术方案:
一种基于MyBatis的SQL语句的配置方法,包括MyBatis框架、核心配置文件、映射配置文件和数据库,包括了所述MyBatis框架对所述数据库进行操作的过程:
步骤A:在java项目中引入所述MyBatis框架依赖库和所述数据库的驱动;
步骤B:对所述核心配置文件进行编写;
步骤C:创建所述映射配置文件,所述映射配置文件把SQL语句作为参数传输进所述MyBatis框架中,所述MyBatis框架对SQL语句进行参数解析并对所述数据库执行操作;
步骤D:根据不同类型的所述数据库,通过ID制定SQL语句,读取配置好的SQL语句并执行语句,最后获取结果。
优选的,包括所述MyBatis框架对SQL语句的解析过程:
步骤C1:所述映射配置文件把SQL语句作为参数传输进所述MyBatis框架中;
步骤C2:所述MyBatis框架对传输进来的SQL语句进行判断,判断该SQL语句的类型;
步骤C3:若作为参数的SQL语句的类型为查询类,则返回一个列表,所述列表上的每一个元素均为一个map对象;若作为参数的SQL语句的类型为修改类,则直接返回影响的记录数。
优选的,所述核心配置文件为配置全局信息的XML文件,包括数据库的用户名、密码、链接和数据库所选用的驱动信息。
优选的,所述映射配置文件为配置ORM映射关系和SQL语句的XML文件。
一种基于MyBatis的SQL语句配置方法的***,包括MyBatis框架、核心配置文件、映射配置文件和数据库,包括所述MyBatis框架进行所述数据库操作模块,用于对所述数据库进行配置;
在java项目中引入所述MyBatis框架依赖库和所述数据库的驱动;
对所述核心配置文件进行编写;
创建所述映射配置文件,所述映射配置文件把SQL语句作为参数传输进所述MyBatis框架中,所述MyBatis框架对SQL语句进行参数解析并对所述数据库执行操作;
根据不同类型的所述数据库,通过ID制定SQL语句,读取配置好的SQL语句并执行语句,最后获取结果。
优选的,包括所述mybatis框架对SQL语句的解析模块,用于对SQL语句进行解析;
所述映射配置文件把SQL语句作为参数传输进所述MyBatis框架中;
所述MyBatis框架对传输进来的SQL语句进行判断,判断该SQL语句的类型;
若作为参数的SQL语句的类型为查询类,则返回一个列表,所述列表上的每一个元素均为一个map对象;若作为参数的SQL语句的类型为修改类,则直接返回影响的记录数。
相对于现有技术来说,减少了建立与数据库表结构相对应的类对象,来实现ORM映射的步骤,还有不同于现有技术的映射文件配置,配置映射文件一般一个表(或类对象)对应一个文件。在其中配置需要执行的SQL语句以及其他相关设置。在使用MyBatis的过程中,每次使用新的SQL语句的时候,需要查看有无相应映射文件及数据表对应的实体类,如果没有则需要创建。现在无需多处配置,可通过将SQL语句作为参数输入MyBatis框架中,利用MyBatis框架对参数的解析功能,进行自动选择配置,缩短了开发时间,提高了开发效率,而且免去了配置实体类的麻烦,在数据表结构调整时,无需再修改实体类,为项目的维护提供了灵活性。
附图说明
图1是本发明的MyBatis框架数据库进行操作的流程图;
图2是本发明的MyBatis框架对SQL语句的解析流程图。
其中:MyBatis框架1、核心配置文件2、映射配置文件3、数据库4。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。
一种基于MyBatis的SQL语句的配置方法,包括MyBatis框架1、核心配置文件2、映射配置文件3和数据库4,包括了所述MyBatis框架1对所述数据库4进行操作的过程,如图1所示:
步骤A:在java项目中引入所述MyBatis框架1依赖库和所述数据库4的驱动;
步骤B:对所述核心配置文件2进行编写;
步骤C:创建所述映射配置文件3,所述映射配置文件3把SQL语句作为参数传输进所述MyBatis框架1中,所述MyBatis框架1对SQL语句进行参数解析并对所述数据库4执行操作;
步骤D:根据不同类型的所述数据库4,通过ID制定SQL语句,读取配置好的SQL语句并执行语句,最后获取结果。
优选的,如图2所示,包括所述MyBatis框架1对SQL语句的解析过程:
步骤C1:所述映射配置文件3把SQL语句作为参数传输进所述MyBatis框架1中;
步骤C2:所述MyBatis框架1对传输进来的SQL语句进行判断,判断该SQL语句的类型;
步骤C3:若作为参数的SQL语句的类型为查询类,则返回一个列表,所述列表上的每一个元素均为一个map对象;若作为参数的SQL语句的类型为修改类,则直接返回影响的记录数。
优选的,所述核心配置文件2为配置全局信息的XML文件,包括数据库的用户名、密码、链接和数据库所选用的驱动信息。
优选的,所述映射配置文件3为配置ORM映射关系和SQL语句的XML文件。
一种基于MyBatis的SQL语句配置方法的***,包括MyBatis框架1、核心配置文件2、映射配置文件3和数据库4,包括所述MyBatis框架1进行所述数据库4操作模块,用于对所述数据库4进行配置;
在java项目中引入所述MyBatis框架1依赖库和所述数据库4的驱动;
对所述核心配置文件2进行编写;
创建所述映射配置文件3,所述映射配置文件3把SQL语句作为参数传输进所述MyBatis框架1中,所述MyBatis框架1对SQL语句进行参数解析并对所述数据库4执行操作;
根据不同类型的所述数据库4,通过ID制定SQL语句,读取配置好的SQL语句并执行语句,最后获取结果。
优选的,包括所述mybatis框架1对SQL语句的解析模块,用于对SQL语句进行解析;
所述映射配置文件3把SQL语句作为参数传输进所述MyBatis框架1中;
所述MyBatis框架1对传输进来的SQL语句进行判断,判断该SQL语句的类型;
若作为参数的SQL语句的类型为查询类,则返回一个列表,所述列表上的每一个元素均为一个map对象;若作为参数的SQL语句的类型为修改类,则直接返回影响的记录数。
以上结合具体实施例描述了本发明的技术原理。这些描述只是为了解释本发明的原理,而不能以任何方式解释为对本发明保护范围的限制。基于此处的解释,本领域的技术人员不需要付出创造性的劳动即可联想到本发明的其它具体实施方式,这些方式都将落入本发明的保护范围之内。

Claims (2)

1.一种基于MyBatis的SQL语句的配置方法,所述方法由基于MyBatis的SQL语句的配置***执行,所述***包括MyBatis框架、核心配置文件、映射配置文件和数据库,其特征在于:所述核心配置文件为配置全局信息的XML文件,包括数据库的用户名、密码、链接和数据库所选用的驱动信息;
包括了所述MyBatis框架对所述数据库进行操作的过程:
步骤A:在java项目中引入MyBatis框架依赖库和所述数据库的驱动;
步骤B:对所述核心配置文件进行编写;
步骤C:创建所述映射配置文件,所述映射配置文件把SQL语句作为参数传输进所述MyBatis框架中,所述MyBatis框架对传输进来的SQL语句进行判断,判断该SQL语句的类型;
若作为参数的SQL语句的类型为查询类,则返回一个列表,所述列表上的每一个元素均为一个map对象;若作为参数的SQL语句的类型为修改类,则直接返回影响的记录数;
步骤D:根据不同类型的所述数据库,通过ID制定SQL语句,读取配置好的SQL语句并执行语句,最后获取结果。
2.根据权利要求1所述一种基于MyBatis的SQL语句的配置方法,其特征在于:
所述映射配置文件为配置ORM映射关系和SQL语句的XML文件。
CN201711143542.4A 2017-11-17 2017-11-17 一种基于MyBatis的SQL语句的配置方法、*** Active CN108121542B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711143542.4A CN108121542B (zh) 2017-11-17 2017-11-17 一种基于MyBatis的SQL语句的配置方法、***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711143542.4A CN108121542B (zh) 2017-11-17 2017-11-17 一种基于MyBatis的SQL语句的配置方法、***

Publications (2)

Publication Number Publication Date
CN108121542A CN108121542A (zh) 2018-06-05
CN108121542B true CN108121542B (zh) 2021-07-06

Family

ID=62228476

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711143542.4A Active CN108121542B (zh) 2017-11-17 2017-11-17 一种基于MyBatis的SQL语句的配置方法、***

Country Status (1)

Country Link
CN (1) CN108121542B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109933571B (zh) * 2019-01-23 2023-07-21 平安科技(深圳)有限公司 数据库设计文档生成方法、装置及计算机可读存储介质
CN110309365B (zh) * 2019-04-09 2023-07-25 长飞光纤光缆股份有限公司 一种基于Mybatis实现的openstack数据查询方法与装置
CN110765152B (zh) * 2019-09-18 2023-05-30 平安科技(深圳)有限公司 Sql提取方法、装置、计算机设备和存储介质
CN110851346B (zh) * 2019-09-24 2024-05-31 平安科技(深圳)有限公司 查询语句边界问题的检测方法、装置、设备及存储介质
CN110866029B (zh) * 2019-10-11 2022-08-09 支付宝(杭州)信息技术有限公司 sql语句构建方法、装置、服务器及可读存储介质
CN111158646A (zh) * 2019-12-17 2020-05-15 广西交通设计集团有限公司 一种sql轻量化持久层框架及配置方法
CN111241064B (zh) * 2020-01-10 2023-11-03 深圳震有科技股份有限公司 一种数据库配置文件的处理方法、装置及存储介质
CN111949491B (zh) * 2020-08-14 2023-10-27 中国工商银行股份有限公司 MyBatis应用程序的SQL提取方法及装置
CN113392122B (zh) * 2021-06-09 2022-03-11 北京同创永益科技发展有限公司 一种基于Mybatis框架分离及运行HQL的方法
CN113342399B (zh) * 2021-06-29 2024-07-02 中国农业银行股份有限公司 应用项目的结构配置方法、装置及可读存储介质
CN114756554B (zh) * 2022-06-13 2022-09-30 中建电子商务有限责任公司 一种基于MyBatis框架的数据查询处理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020847A (zh) * 2016-06-06 2016-10-12 北京京东尚科信息技术有限公司 一种持久层开发框架配置sql的方法和装置
CN106294075A (zh) * 2016-08-17 2017-01-04 浪潮软件股份有限公司 一种对sql进行监控的方法、装置及***
CN106844678A (zh) * 2017-01-24 2017-06-13 山东浪潮商用***有限公司 一种Mybatis数据源与连接池的交互方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8103644B2 (en) * 2005-01-12 2012-01-24 Microsoft Corporation Data access layer class generator

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020847A (zh) * 2016-06-06 2016-10-12 北京京东尚科信息技术有限公司 一种持久层开发框架配置sql的方法和装置
CN106294075A (zh) * 2016-08-17 2017-01-04 浪潮软件股份有限公司 一种对sql进行监控的方法、装置及***
CN106844678A (zh) * 2017-01-24 2017-06-13 山东浪潮商用***有限公司 一种Mybatis数据源与连接池的交互方法

Also Published As

Publication number Publication date
CN108121542A (zh) 2018-06-05

Similar Documents

Publication Publication Date Title
CN108121542B (zh) 一种基于MyBatis的SQL语句的配置方法、***
US8392880B2 (en) Rapid application development for database-aware applications
CN104133772B (zh) 一种自动生成测试数据的方法
US20040158820A1 (en) System for generating an application framework and components
CN106598612B (zh) 一种数据库中数据表的操作方法及***
CN102117202B (zh) 基于j2ee架构的代码生成装置
US20060048107A1 (en) Enhanced compiled representation of transformation formats
US10614126B2 (en) Textual query editor for graph databases that performs semantic analysis using extracted information
US8417690B2 (en) Automatically avoiding unconstrained cartesian product joins
CN111078702B (zh) 一种sql语句分类管理及统一查询方法和装置
CN108073688B (zh) 一种数据迁移的方法及装置
US20150026223A1 (en) System and method for modelling data
CN108509199A (zh) 自动生成中文注释的方法、装置、设备及存储介质
CN108762743A (zh) 一种数据表操作代码生成方法及装置
CN103559025A (zh) 一种采用聚类方式进行软件重构的方法
CN111061739A (zh) 海量医疗数据的入库方法及装置、电子设备、存储介质
CN103095726A (zh) 一种协议解析器的处理方法和装置
CN102253975A (zh) 一种数据库自动转换***及方法
CN112162751A (zh) 一种接口文档自动生成方法及***
CN109656943A (zh) 屏蔽异构数据库查询复杂度的数据服务方法
CN106599167A (zh) 一种支持增量升级数据库的***和方法
CN104503767A (zh) 基于lin协议的代码自动生成***及方法
CN114238527A (zh) 基于对象关系映射的数据处理方法和数据处理装置
CN110334001A (zh) 一种批量自动生成回声测试的方法和装置
CN103593182A (zh) 一种采用聚类方式进行软件重构的方法

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