iBATOR介绍,什么是iBATOR iBATIS和Hibernate区别 iBATOR介绍,什么是iBATOR? iBATOR是一个代码生成器,用于iBATIS。 iBATOR内部检查的一个或多个数据库表和将生成iBATIS的工件,可用于访问表。 稍后,您可以编写自定义的SQL代码或存储过程来满足您的要求。 iBATOR产生以下项目: SqlMap XML文件 Java类相匹配的表的主键和字段 使用上述对象DAO类(可选) iBATOR可以运行作为一个独立的JAR文件,或作为一个Ant任务,或者作为一个Eclipse插件。本教程将教你生成iBATIS的配置文件格式命令行的简单的方法。 下载iBATOR: 如果您使用的IDE是Eclipse,比其他下载独立的JAR。独立的JAR包括一个Ant任务来运行iBATOR,或者您也可以从Java代码中的命令行运行iBATOR。 您可以从Download iBATOR下载zip文件。 您可以检查在线文档 - iBATOR文档。 生成配置文件 要运行iBATOR,请按照以下步骤操作 - 步骤1 适当地创建并填充配置文件ibatorConfig.xml。至少,你必须指定 - 一个<jdbcConnection>元素来指定如何连接到目标数据库。 一个<javaModelGenerator>元素,用于为生成的Java模型对象指定目标程序包和目标项目。 一个<sqlMapGenerator>元素,用于为生成的SQL映射文件指定目标程序包和目标项目。 一个<daoGenerator>元素指定为生成DAO接口和类目标包和目标项目(您可能省略<daoGenerator>元素,如果你不希望产生的DAO)。 至少有一个数据库<table>元素 注 -有关iBATOR配置文件的示例,请参阅XML配置文件参考页。 第2步 将文件保存在方便的位置,例如:\temp\ ibatorConfig.xml。 第3步 现在从命令行运行iBATOR,如下所示 - java -jar abator.jar -configfile \temp\abatorConfig.xml -overwrite 它会告诉iBATOR使用你的配置文件运行。它还会告诉iBATOR覆盖任何具有相同名称的现有Java文件。如果要保存任何现有的Java文件,请省略-overwrite参数。 如果发生冲突,iBATOR将使用唯一的名称保存新生成的文件。 运行iBATOR后,您需要创建或修改标准iBATIS配置文件以利用您新生成的代码。这在下一节中解释。 运行iBATOR后的任务 在运行iBATOR之后,您需要创建或修改其他iBATIS配置工件。主要任务如下 - 创建或修改SqlMapConfig.xml文件。 创建或修改dao.xml文件(仅当您使用iBATIS DAO Framework时)。 下面详细介绍每项任务 - 更新SqlMapConfig.xml文件: iBATIS使用通常名为SqlMapConfig.xml的XML文件来指定在iBATIS会话中使用的数据库连接,事务管理方案和SQL映射XML文件的信息。 iBATOR无法为您创建此文件,因为它对您的执行环境一无所知。但是,此文件中的一些项目直接与iBATOR生成的项目相关。 配置文件中的iBATOR特定需求如下: 语句名称空间必须启用。 必须列出iBATOR生成的SQL Map XML文件。 例如,假设iBATOR生成了名为MyTable_SqlMap.xml的SQL Map XML文件,并且该文件已放置在项目的test.xml包中。SqlMapConfig.xml文件应该包含这些条目: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-config-2.dtd"> <sqlMapConfig> <!-- Statement namespaces are required for Abator --> <settings useStatementNamespaces="true" /> <!-- Setup the transaction manager and data source that are appropriate for your environment --> <transactionManager type="..."> <dataSource type="..."> </dataSource> </transactionManager> <!-- SQL Map XML files should be listed here --> <sqlMap resource="test/xml/MyTable_SqlMap.xml" /> </sqlMapConfig> 如果存在多个SQL Map XML文件(这很常见),那么可以按照任何顺序使用<transactionManager>元素之后的重复<sqlMap>元素列出这些文件。 更新dao.xml文件: iBATIS DAO框架由通常称为dao.xml的xml文件配置。 iBATIS DAO框架使用该文件来控制DAO的数据库连接信息,并列出DAO实现类和DAO接口。在这个文件中,你应该指定你的SqlMapConfig.xml文件的路径,以及所有iBATOR生成的DAO接口和实现类。 例如,假设iBATOR生成了名为MyTableDAO的DAO接口和一个名为MyTableDAOImpl的实现类,并且这些文件已放置在项目的test.dao包中。dao.xml文件应该包含这些条目 dao.xml文件应该有这些项: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE daoConfig PUBLIC "-//ibatis.apache.org//DTD DAO Configuration 2.0//EN" "http://ibatis.apache.org/dtd/dao-2.dtd"> <daoConfig> <context> <transactionManager type="SQLMAP"> <property name="SqlMapConfigResource" value="test/SqlMapConfig.xml"/> </transactionManager> <!-- DAO interfaces and implementations should be listed here --> <dao interface="test.dao.MyTableDAO" implementation="test.dao.MyTableDAOImpl" /> </context> </daoConfig> 注 - 仅当您为iBATIS DAO框架生成DAO时才需要执行此步骤。 iBATIS和Hibernate区别