一种基于MyBatis框架的SQL处理方法及装置制造方法及图纸

技术编号:15250993 阅读:36 留言:0更新日期:2017-05-02 14:11
本发明专利技术公开了一种基于MyBatis框架的SQL处理方法、装置及服务器,包括:获取客户ID信息;根据客户ID信息查询客户的所属渠道组长编码信息;利用所属渠道组长编码信息,确定第一SQL,第一SQL为获取客户可销商品的SQL;利用所属渠道组长编码信息,确定第二SQL,第二SQL为获取客户渠道上级渠道的可销商品的SQL;获取第一SQL和第二SQL的并集,生成主SQL,并将主SQL存储至XML文件;可见,在本实施例中,通过将第一SQL和第二SQL取并集的这种封装方案,可在实现每个SQL的功能的基础上,减少了SQL的重复逻辑和代码,保证代码维护的统一性,减少代码的冗余和维护成本。

SQL processing method and device based on MyBatis framework

The invention discloses a method, a device and a server, SQL processing based on MyBatis framework includes: acquiring ID customer information; according to the ID information query is channel leader encoding information of customers; the use of the channel encoding information to determine the first leader, SQL SQL, the first to obtain customer goods available for sale by the SQL; is the head of channel encoding information, second SQL, second SQL for superior customer channels channel goods available for sale SQL; obtaining the first SQL and the second SQL Union, and will generate the main SQL, the main SQL stored in XML file; visible, in this embodiment, through the package for the first SQL and the second SQL Union, based in each SQL function, to reduce duplication of logic and code SQL, to ensure the unity of code maintenance, reduce code redundancy and maintenance costs.

【技术实现步骤摘要】

本专利技术涉及MyBatis框架的SQL处理
,更具体地说,涉及一种基于MyBatis框架的SQL处理方法、装置及服务器。
技术介绍
MyBatis是一个基于Java的持久层框架,目前,MyBatis的SQL均在xml文件中编写,但是,在xml文件中编写SQL有一定的编写复杂度和难度。因此在编写大量SQL时,会产生由于编写SQL的数量变大而增加SQL的编写复杂度和难度;并且在xml文件中编写的多个SQL,会出现重复的SQL,从而增加代码的冗余和维护成本。因此,如何减少编码复杂度和难度,避免相同的SQL重复出现在xml中是本领域技术人员需要解决的问题。
技术实现思路
本专利技术的目的在于提供一种基于MyBatis框架的SQL处理方法、装置及服务器,以实现减少编码复杂度和难度,避免相同的SQL重复出现在xml中,增加代码的冗余和维护成本的问题。为实现上述目的,本专利技术实施例提供了如下技术方案:一种基于MyBatis框架的SQL处理方法,包括:获取客户ID信息;根据所述客户ID信息查询所述客户的所属渠道组长编码信息;利用所述所属渠道组长编码信息,确定第一SQL,所述第一SQL为获取所述客户可销商品的SQL;利用所述所属渠道组长编码信息,确定第二SQL,所述第二SQL为获取所述客户所述渠道上级渠道的可销商品的SQL;获取所述第一SQL和所述第二SQL的并集,生成主SQL,并将所述主SQL存储至XML文件。其中,并将所述主SQL存储至XML文件,包括:将所述主SQL存入Map中,通过Map传递至MyBatis框架的XML文件。其中,所述获取客户ID信息之前,还包括:判断参数customerid是否为空;若不为空,在从所述参数customerid中获取所述客户ID信息。一种基于MyBatis框架的SQL处理装置,包括:客户ID获取模块,用于获取客户ID信息;组长编码信息获取模块,用于根据所述客户ID信息查询所述客户的所属渠道组长编码信息;第一SQL确定模块,用于利用所述所属渠道组长编码信息,确定第一SQL,所述第一SQL为获取所述客户可销商品的SQL;第二SQL确定模块,用于利用所述所属渠道组长编码信息,确定第二SQL,所述第二SQL为获取所述客户所述渠道上级渠道的可销商品的SQL;主SQL生成模块,用于获取所述第一SQL和所述第二SQL的并集,生成主SQL;存储模块,用于将所述主SQL存储至XML文件。其中,所述存储模块将所述主SQL存入Map中,通过Map传递至MyBatis框架的XML文件。其中,还包括:判断模块,用于判断参数custonerid是否为空;所述客户ID获取模块,用于在所述参数custonerid不为空时,从所述参数customerid中获取所述客户ID信息。一种服务器,包括上述的SQL处理装置。通过以上方案可知,本专利技术实施例提供的一种基于MyBatis框架的SQL处理方法,包括:获取客户ID信息;根据所述客户ID信息查询所述客户的所属渠道组长编码信息;利用所述所属渠道组长编码信息,确定第一SQL,所述第一SQL为获取所述客户可销商品的SQL;利用所述所属渠道组长编码信息,确定第二SQL,所述第二SQL为获取所述客户所述渠道上级渠道的可销商品的SQL;获取所述第一SQL和所述第二SQL的并集,生成主SQL,并将所述主SQL存储至XML文件;可见,在本实施例中,通过获取第一SQL和第二SQL,并将第一SQL和第二SQL取并集的这种封装方案,减少编码复杂度和难度,并在实现每个SQL的功能的基础上,减少了SQL的重复逻辑和代码,保证代码维护的统一性,减少代码的冗余和维护成本;本专利技术还公开了一种基于MyBatis框架的SQL处理装置及服务器,同样能实现上述技术效果。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例公开的一种基于MyBatis框架的SQL处理方法流程示意图;图2为本专利技术实施例公开的一种基于MyBatis框架的SQL处理装置结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例公开了一种基于MyBatis框架的SQL处理方法、装置及服务器,以实现减少编码复杂度和难度,避免相同的SQL重复出现在xml中,增加代码的冗余和维护成本的问题。参见图1,本专利技术实施例提供的一种基于MyBatis框架的SQL处理方法,包括:S101、获取客户ID信息;S102、根据所述客户ID信息查询所述客户的所属渠道组长编码信息;具体的,本实施例中的客户的所属渠道组长编码信息中,包括了该客户所属渠道的编码信息,以及该客户所属渠道的上级渠道的编码信息,通过上述编码信息,可在后台生成对应的SQL。S103、利用所述所属渠道组长编码信息,确定第一SQL,所述第一SQL为获取所述客户可销商品的SQL;S104、利用所述所属渠道组长编码信息,确定第二SQL,所述第二SQL为获取所述客户所述渠道上级渠道的可销商品的SQL;需要说明的是,本方案中的SQL为获取对应可销商品的SQL,例如:第一SQL的功能为:获取该客户的可销商品;第二SQL的功能为:获取该客户所述渠道的上级渠道的可销商品。并且,由于在xml中编写sql比较复杂,因此在本实施例中,确定所属渠道组长编码信息之后,可以根据所属渠道组长编码信息在java后台进行编码,并在编码后进行合并处理,生成主SQL,减少编码复杂度和难度;需要说明的是,本实施例中的第一和第二只是为了区分两个SQL,并不是说明只能对两个SQL进行操作。S105、获取所述第一SQL和所述第二SQL的并集,生成主SQL,并将所述主SQL存储至XML文件。其中,并将所述主SQL存储至XML文件,包括:将所述主SQL存入Map中,通过Map传递至MyBatis框架的XML文件。具体的,在现有技术中,生成两个SQL后,会将这两个SQL均存入XML文件中,但是由于这两个SQL的功能相同,均是获取可销商品,不同的只是获取的对象不同,例如:第一SQL获取的是该客户的,第二SQL获取的是该客户的上级渠道的;因此,若将两个SQL均存入XML文件中,则会出现很多相同的代码,从而增加了代码的冗余和维护成本,因此在本实施例中,将两个SQL存入XML文件之前,需要对两个SQL取并集,将第一sql的取数集合跟第二Sql的取数集合合并成一个数据集合,这样在能实现两个SQL的功能的基础上,减少了XML文件中重复SQL的出现,保证代码维护的统一性,减少代码的冗余和维护成本。基于上述实施例,在本实施例中,所述获取客户ID信息之前,还包括:判断参数customerid是否为空;若不为空,在从所述参数customerid中获取所述客户ID信息。具体的,在本实施例中,若参数本文档来自技高网...

【技术保护点】
一种基于MyBatis框架的SQL处理方法,其特征在于,包括:获取客户ID信息;根据所述客户ID信息查询所述客户的所属渠道组长编码信息;利用所述所属渠道组长编码信息,确定第一SQL,所述第一SQL为获取所述客户可销商品的SQL;利用所述所属渠道组长编码信息,确定第二SQL,所述第二SQL为获取所述客户所述渠道上级渠道的可销商品的SQL;获取所述第一SQL和所述第二SQL的并集,生成主SQL,并将所述主SQL存储至XML文件。

【技术特征摘要】
1.一种基于MyBatis框架的SQL处理方法,其特征在于,包括:获取客户ID信息;根据所述客户ID信息查询所述客户的所属渠道组长编码信息;利用所述所属渠道组长编码信息,确定第一SQL,所述第一SQL为获取所述客户可销商品的SQL;利用所述所属渠道组长编码信息,确定第二SQL,所述第二SQL为获取所述客户所述渠道上级渠道的可销商品的SQL;获取所述第一SQL和所述第二SQL的并集,生成主SQL,并将所述主SQL存储至XML文件。2.根据权利要求1所述的SQL处理方法,其特征在于,并将所述主SQL存储至XML文件,包括:将所述主SQL存入Map中,通过Map传递至MyBatis框架的XML文件。3.根据权利要求1或2所述的SQL处理方法,其特征在于,所述获取客户ID信息之前,还包括:判断参数customerid是否为空;若不为空,在从所述参数customerid中获取所述客户ID信息。4.一种基于MyBatis框架的SQL处理装置,其特征在于,包括:客户ID获取模块,用于获取客户ID信息;组长编...

【专利技术属性】
技术研发人员:李渔燕覃美灵毛勇
申请(专利权)人:金蝶软件中国有限公司
类型:发明
国别省市:广东;44

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

1