用 Apache Ant 进行 Derby 数据库开发

http://tech.ddvip.com   2008年09月09日    社区交流

内容摘要:在这篇文章中,作者 James Snell 介绍了少量 Apache Ant 任务,这些任务使得将 Derby 数据库的构建和发布包含到应用程序的构建过程中变得更加容易。

  本文示例源代码或素材下载

  Apache Ant 是每个开发人员在他们的开发工具箱中必备的几种工具之一。它的灵活性和可扩展性使之成为几乎可以为任何类型的应用程序创建健壮、灵活的应用程序构建过程的理想工具。

  Apache Derby 是一种高质量的、纯 Java™ 的嵌入式关系数据库引擎,IBM® 最近已将其捐献给开放源码社区。Derby 数据库基于文件系统,具有高度的可移植性,并且是轻量级的,这使得它非常便于发布。

  Snell 强调,为了使用 Derby 进行实验和开发,通过创建少量定制的、简单的 Ant 任务,将 Derby 数据库的创建和打包与应用程序二进制文件基于 Ant 的编译相集成,这样很有帮助。

  入门

  基本的 Ant 包发布时附带了很多类型的基本任务,其中有一项任务允许在 Java Database Connectivity (JDBC) 数据源上执行 SQL 语句。虽然这项任务能够很好地在 Derby 数据库引擎上工作,但是对于很多需要处理的关于 Derby 的独有特征,SQL 任务无法胜任。

  Derby 是一种嵌入式数据库。对于每个 Java 虚拟机(JVM)实例,只允许加载一个 Derby 实例。每次只允许一个 Derby 实例访问任何给定的数据库。当 Derby 实例连接到一个数据库时,就会创建一个锁,以帮助强制实施这些规则。去掉这个锁的惟一方法是拆掉 Derby 到数据库的连接。仅仅关闭 JDBC 连接还不足以切断它们之间的连接。为了确保数据恢复检查点和其他各种数据库管理功能得到正确的处理,关闭 Derby 中的数据库也很重要。虽然 SQL Ant 任务完全可以启动 Derby 嵌入式数据库,并在该数据库上执行 SQL 语句,但它不能处理适当的 Derby 关闭任务,这些任务需要恰当地使用 Derby。

  通过提供一些显式地控制 Derby 和各个数据库连接的负载状态的方法,这里介绍的 Ant 任务对上述问题作出了简单的回答。

来源:developerWorks    作者:James M. Snell    责编:豆豆技术应用

正在加载评论...