利用ddlutil进行数据库迁移.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
不同数据库间数据的迁移通常是件麻烦事,特别是如今移动应用和移动商务普及的今天。针对此需求,在此简要介绍DDlUtil在不同数据库间迁移数据的使用方法和过程. 做为Apacher软件联盟旗下数据库项目的一个子项目,DdlUtil是一个小巧的,与数据库描述文件一起使用的组件. 利用DdlUtils提供的功能,程序员可以方便的在不同的数据库之间实现数据的迁移.而不用考虑底层数据库实现的细节差异.在此数据库描述文件通常是一些XML文件,他们分别包含了数据库的定义文件及实际数据文件. 得益于DdlUtils良好的设计,在实际应用中,只需相因导入特定数据库的数据库驱动,既可获得DdlUtils的支持。如果要获取更多的信息,DdlUtil的官网是/ddlutils/ . 下面以一个实际例子说明DdlUtils的使用过程, 在此为了叙述方便我们简化数据库的内容仅包含一张名为customer的表,其中id字段为其主键,不允许重复插入.MySQL数据库可以代表移动应用中的数据中心,负责汇集许多不同的分布数据库Derby中的数据.. Derby代表移动应用中的一个独立客户端,他和MySQL数据中心拥有共享数据的同时,也有自己独有的数据,需要上传保存. MySQL数据库初始内容与Derby内容初始内容如下,在此id值为4的数据赵七为需要同步的数据. 下面让我们开始具体操作. 第一步:构件环境,导入相应依赖驱动包 为了确定数据库的具体位置DdlUtils需要借助外部数据源模块,在此推荐Apacher软件联盟下的另一个常用项目DBCP (Database Connection Pooling,数据库连接池).截至本文其最新版本为commons-dbcp-1.4-bin.zip .可在/dbcp获取更多信息. 此外程序还需要导入MySQL和Derby的对应数据库驱动jar包到工程路径,在此不做具体论述.读者可根据具体情况导入. 第二步:利用DdlUtils导出数据库定义文件和数据库数据文件. 过程主要代码如下 //利用DBCP提供的BasicDataSource指定数据源位置BasicDataSource dataSource_Derby = new BasicDataSource(); dataSource_Derby.setDriverClassName(org.apache.derby.jdbc.ClientDriver); dataSource_Derby.setUrl(jdbc:derby://:1527/e:\\anttest\\MyDbTest); //获取数据库平台和模型 Platform platform_Derby = PlatformFactory.createNewPlatformInstance(dataSource_Derby); Database database_Derby= platform_Derby.readModelFromDatabase(MyDbTest); //导出数据库描述的定义文件 new DatabaseIO().write(database_Derby, C:\\Database\\dbXML.txt); //导出数据库的数据文件 FileOutputStream fos=new FileOutputStream(C:\\Database\\dumpFile.txt); DataWriter dw=new DataWriter(fos); new DatabaseDataIO().writeDataToXML(platform_Derby, database_Derby,dw); 以上代码展示了如何利用DdlUtils导出数据库的定义文件和数据库数据文件. 程序导出的数据库的定义文件dbXML.txt的内容如下所示。他包含了数据库表格的详细描述 ?xml version=1.0? !DOCTYPE database SYSTEM /torque/dtd/database database name=MyDbTest table name=CUSTOMER column name=ID primaryKey=true required=true type=INTEGER size=10 autoIncrement=false/ column name=NAME primaryKey=false required=false type=VARCHAR size=20 autoIncrement=false/ /table /database 程序导出的数据库数据文件dumpFile.txt内容如下所示。他包含了具体的数据信息. ?xml v

文档评论(0)

ffpg + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档