可以用Torque来为数据访问层声成Java代码。也可以通过它从现存数据库中取出Java对象(逆向工程),前提是你拥有一个现存的数据访问对象(DAO)层。对于新的项目来说,如果你用XML为你的业务对象建模,Torque将生成创建数据库表的SQL脚本以及用来读取、写入和查询数据的Java对象。
J2EE程序员对于持久化层有很多不错的选择。(这里列举了其它的方法。)我们的重点是Torque所提供的功能以及怎样使它工作起来。本文的示例代码可以在此下载。
Torque有两大组成部分——生成组件和运行时组件。可以用Torque来生成值对象、SQL表的创建脚本以及数据访问层。Apache Ant或者Apache Maven都能运行Torque生成器。在本文中,我选用了Ant。
Torque能轻松维护代码是因为值对象、数据访问对象和SQL代码全部是从一个被称为schema的XML文件生成的。将此文件命名为yourprojectname-schema.xml并将其放到Torque安装目录的schema子目录中。这个XML文件包含了你的每个值对象,包括名字、属性以及和其它对象的关系。这里的例子用到的XML schema文件叫作builder-schema.xml,在示例代码中可以找到。注意在这里我们建立了一个从Product表到Vendor表的外键参考。这是因为一个供应商可以有很多产品,而每种产品都只有一个供应商。
另一个重要的配置文件是Torque安装目录下的build.properties文件。必须编辑这个文件来添加项目名、使用的数据库、必须的JDBC连接信息以及生成的类文件该放到那个包中。这个文件也包含在供下载的示例代码中。
在数据库管理工具中创建一个库,确保你的Apache Ant版本是1.5以上。将驱动JDBC的JAR文件放到Torque安装目录的lib子目录中。然后在Torque目录中运行下面的命令:
ant -f build-torque.xml
Torque应该将所有生成的类文件放到主安装目录下的src/java目录中。而SQL脚本放在src/sql目录中。