[发明专利]一种基于ibatis的SQL脚本动态加载方法无效

专利信息
申请号: 201110377412.3 申请日: 2011-11-24
公开(公告)号: CN102521274A 公开(公告)日: 2012-06-27
发明(设计)人: 杨飞 申请(专利权)人: 上海明想电子科技有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 上海申汇专利代理有限公司 31001 代理人: 俞宗耀
地址: 201611 上海市*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 ibatis sql 脚本 动态 加载 方法
【说明书】:

技术领域

发明涉及一种SQL脚本动态加载方法,尤其涉及一种基于ibatis的SQL脚本动态加载方法。

背景技术

目前Java领域的数据库访问方式,使用比较广主要是hibernate和iBATIS了,两者都是属于开源软件。iBATIS一词来源于“internet”和“abatis”的组合,是一个由Clinton Begin在2001年发起的开放源代码项目。最初侧重于密码软件的开发,现在是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO),同时还提供一个利用这个框架开发的JPetStore实例。相对Hibernate和Apache OJB等“一站式”ORM解决方案而言,ibatis 是一种“半自动化”的ORM实现。所谓“半自动化”,是相对Hibernate等提供了全面的数据库封装机制的“全自动化” ORM 实现而言,“全自动”ORM 实现了 POJO 和数据库表之间的映射,以及 SQL 的自动 生成和执行。而ibatis 的着力点,则在于POJO 与 SQL之间的映射关系。也就是说,ibatis 并不会为程序员在运行期自动生成 SQL 执行。具体的 SQL 需要程序员编写,然后通过映射配置文件,将SQL所需的参数,以及返回的结果字段映射到指定POJO。

但目前iBATIS的使用方式比较适合瀑布式开发,不太符合目前的模块化开发思路。图1为现有基于ibatis的SQL脚本动态加载过程示意图,请参见图1,在一个统一的sqlConfig文件中配置上所有该系统所需要访问的sql脚本文件,在应用启动过程中就将这些脚本加载到缓存中。在用户需要访问数据库时,直接从缓存中获取对应的脚本,如果不存在直接报错。iBATIS有以下几个缺点:

(1)   必须有唯一一个sqlmapConfig配置文件,里面配置上所有需要访问数据库的sqlmap文件,集中式管理和模块化开发有冲突;

(2)   在项目开发中,多人共同去维护这一份sqlmapConfig文件,代码提交容易引起冲突;

(3)   如果是配置多个数据库,那就意味着需要配置多份sqlmapConfig,其他配置项也同样需要多份,配置文件冗余;

(4)    不能自动识别不同数据库,加载对应数据库类型的sqlmap文件。

因此有必要对现有的基于ibatis的SQL脚本动态加载方法进行改进,能够自动识别不同数据库并加载对应数据库的脚本配置文件,从而实现模块化开发。

发明内容

本发明所要解决的技术问题是提供一种基于ibatis的SQL脚本动态加载方法,能够识别不同sql配置文件并自动加载对应的脚本配置文件,从而实现模块化开发。

本发明为解决上述技术问题而采用的技术方案是提供一种基于ibatis的SQL脚本动态加载方法,包括如下步骤:a) 配置多个独立的sql配置文件,统一设置所有sql配置文件的缓存区;b) 脚本调用方在查找sql信息的时候,先去缓存区里面读取sql脚本配置信息,如果存在,启动程序自动加载相应的sql配置文件到缓存区,否则抛出异常,提示出错,并查找匹配的sql配置文件更新缓存区;c) 加载后将该文件信息从sql配置文件中去除;d) 最后从缓存区中读取对应的sql脚本信息返回给调用方。

上述的基于ibatis的SQL脚本动态加载方法,其中,所述步骤b)采用遍历的方法进行搜索匹配并加载相应的sql配置文件到缓存区。

上述的基于ibatis的SQL脚本动态加载方法,其中,所述多个不同的sql配置文件分散设置在各自的功能模块中。

上述的基于ibatis的SQL脚本动态加载方法,其中,不同类型的数据库采用不同的sql配置文件。

上述的基于ibatis的SQL脚本动态加载方法,其中,所述不同类型的数据库包括Oracle、Mysql和Sql Server数据库。

本发明对比现有技术有如下的有益效果:本发明提供的基于ibatis的SQL脚本动态加载方法,通过配置多个独立的sql配置文件,省去了总控sql配置文件,易于管理和实现模块化开发;此外,本发明的SQL脚本动态加载方法根据需要加载相应的配置文件,从而提升了系统性能。

附图说明

图1为现有基于ibatis的SQL脚本动态加载过程示意图;

图2为本发明基于ibatis的SQL脚本动态加载过程示意图。

具体实施方式

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海明想电子科技有限公司,未经上海明想电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201110377412.3/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top