`
viking.liu
  • 浏览: 53643 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ibatis 工具 abator

 
阅读更多
Abator是一个用于iBATIS的代码生成器,它能够为iBATIS Sql Mapper(包括:SqlMap XML文件, Java domain classes, 和Java DAO classes)生成artifacts。

1. 介绍
Abator 是一款iBATIS代码生成工具。它从数据库获取信息,然后产生如下文件。
1) 数据库表的SqlMap.xml file 文件,如UserSQL.xml;
2) 数据库表的Java Bean Model,如User.java;
3) 包含一个综合主键的数据库表的主键model,如UserKey.java;
4) 包含DAO层 selectByExample方法的example文件, UserExample.java;
5) 提供插入、更新、查询、删除方法的DAO接口  UserDAO.java;
6) DAO接口的实现类  UserDAOImpl.java。

2. 安装Abator到MyEclipse(Eclipse)中
1) 点击MyEclipse(Eclipse)工具栏中的Help-->software update -->find and install --> search for new features to install --> new remote site。
2) 在name处填写abator ,在url处填写http://ibatis.apache.org/tools/abator。
3) 点击OK, 然后点击finish,系统开始安装Abator到MyEclipse(Eclipse)中。
4) Abator插件安装成功后会在file -->new 菜单中看到Abator for iBATIS Configuration File。

3. 使用Abator生成程序文件
1) 在MyEclipse(Eclipse)中,点击File --> new 选择Abator for iBATIS Configuration File,创建一个名叫做abatorConfig.xml的配置文件。  
2) 修改配置文件。下面给出一个示例。

 
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE abatorConfiguration PUBLIC "-//Apache Software Foundation//DTD Abator for iBATIS Configuration 1.0//EN" "http://ibatis.apache.org/dtd/abator-config_1_0.dtd" >
<abatorConfiguration >
  <abatorContext generatorSet=”java5”>
<!--JDBC驱动程序、连接字符串、用户名以及密码-->
<jdbcConnection driverClass="com.mysql.jdbc.Driver" 
connectionURL="jdbc:mysql://localhost:3306/evaluation" 
userId="root" 
password="138246s" >
<!--连接数据库所用的jar包地址-->
      <classPathEntry 
location=".\mysql-connector-java\5.1.18\mysql-connector-java-5.1.18.jar" /> 
</jdbcConnection>
<!--数据库表的Java Bean Model 存放的目录-->
<javaModelGenerator targetPackage="com.sogou.mobile.tc.ev.report.db" 
targetProject="tcevaluation" />
<!--sqlmap的存放目录-->
<sqlMapGenerator targetPackage="com.sogou.mobile.tc.ev.report.db" 
targetProject="tcevaluation" />
<!--DAO的存放目录, IBATIS DAO在最新版中已经不再更新,可以用spring框架DAO管理代替,或者使用GENERIC-CI不使用框架,直接使用SQL client map-->
<daoGenerator targetPackage="com.sogou.mobile.tc.ev.report.db" 
targetProject="tcevaluation" type="GENERIC-CI" />
<!--设置需要生成的数据库表,schema:数据库名称  tableName表名-->
   <table tableName="Page" domainObjectName="Page">
      <generatedKey column="id" identity="true" 
sqlStatement="select p.nextval from dual"/>
      <columnOverride column="id" property="id" javaType="int" 
jdbcType="int"/>
      <columnOverride column="typeid" property="typeid" javaType="int" 
jdbcType="int" />
    </table>
  </abatorContext>
</abatorConfiguration>

abatorContext generatorSet="Java5" 这里选择得生成器是JAVA2的虽然不是推荐的,但个人觉得还停好用的,其他可以选择Legacy,Java2,Java5,这两个生成器生成的代码在后面WHERE查询条件的时候会有细微不同

<generatedKey>来告诉abator那些列需要自动返回值(当插入的时候可以返回插入记录的主键,这对有外键的数据库极其有用)identity默认为false,则在sqlMap配置文件中<selectKey>的位置在sql命令前面,所以identity应该改为true。sqlStatement属性则填入各类数据库的返回值函数:
Cloudscape This will translate to VALUES IDENTITY_VAL_LOCAL()
DB2 This will translate to VALUES IDENTITY_VAL_LOCAL()
Derby This will translate to VALUES IDENTITY_VAL_LOCAL()
HSQLDB This will translate to CALL IDENTITY()
MySql This will translate to SELECT LAST_INSERT_ID()
SqlServer This will translate to SELECT SCOPE_IDENTITY()

<columnOverride>告诉abator那些列是需要特殊处理的,对于date这种比较复杂的类型,可以用它来指定映射(用jdbctype和javatype属性来指定)。
3) 配置完毕,右键点击abatorConfig.xml文件,点击generate iBatis artfacts就会在相应的配置目。
结构
<abatorConfiguration>
    <!-- 普通的java資源文件 properties
      resource引用  resource="com/myproject/abatorConfig.properties" 必須在com.myproject包中
       url引用  例如:url="file://C:/myfolder/abatorConfig.properties"
                 以${property}的方式引用,属性资源文件中的属性值
     -->
	<properties resource=""? url=""? />*
	<!-- 
	defaultModelType 生成代码的类型
	defaultModelType="conditional(默认值)|flat|hierarchical"
	conditional:类似hierarchical,但是只有一个主键的时候,不会拆分类
	flat:一个table生成一个类
	hierarchical:如果有主键,生成一个类,BLOB生成一个类,其它的在生成一个类	 
	 -->
	 <!-- 
	 generatorSet
	 generatorSet="Legacy(默认值)|Java2|Java5"
	 Legacy 兼容所有的iBatis版本和 Java2,会丢失一些特性,不建议使用
	 Java2 支持iBatis2.2.0及以上,所有版本的Java2
	 Java5 支持iBatis2.2.0及以上,所有版本的JSE5
	  -->
	<abatorContext defaultModelType=””? generatorSet=””?>+
	    <!-- 
	          支持的属性
	           suppressTypeWarnings=false, Java5不起早作用
	           beginningDelimiter="\""  分隔符
	           endingDelimiter ="\""  分隔符
	     -->
		<propter name=”” value=”” />*
		<commentGenerator type=""?>?
			<propter name=”” value=”” />*
		</commentGenerator>
		
		<jdbcConnection driverClass=”” connectionURL=”” userId=””?	password=””?>
		    <!-- location 指的是jdbc连接器的位置,如果在classpath中就不用添加这项了 -->
			<classPathEntry location=””/>*
			<propter name=”” value=”” />*
		</jdbcConnection>
		
		<javaTypeResolver type="" ?>?
			<propter name=”” value=”” />*
		</javaTypeResolver>
		
		<javaModelGenerator type="" ? targetPackage="" targetProject="">
			<propter name=”” value=”” />*
		</javaModelGenerator>
		
		<sqlMapGenerator type="" ? targetPackage=""	targetProject="">
			<propter name=”” value=”” />*
		</sqlMapGenerator>
		
		<daoGenerator type="" ? targetPackage="" targetProject="">?
			<propter name=”” value=”” />*
		</daoGenerator>
		
		<table catalog="" ? schema="" ? tableName="" alias="" ?
			domainObjectName="" ? enableInsert="" ? enableSelectByPrimaryKey="" ?
			enableSelectByExample="" ? enableUpdateByPrimaryKey="" ?
			enableDeleteByPrimaryKey="" ? enableDeleteByExample="" ?
			enableCountByExample="" ? enableUpdateByExample="" ?
			selectByPrimaryKeyQueryId="" ? selectByExampleQueryId="" ? modelType="" ?
			escapeWildcards="" ? delimitIdentifiers="" ?>+
			<propter name=”” value=”” />*
			<generatedKey column="" sqlStatement="" identity="" ? type="" ? />?
			
			<columnRenamingRule searchString="" replaceString="" ? />?
			
			<!-- columnOverride ignoreColumn不能同时出现 -->
			<columnOverride column="" property="" ? javaType="" ?
				jdbcType="" ? typeHandler="" ? delimitedColumnName="" ? />*
			<ignoreColumn column="" delimitedColumnName="" ? />	*
		</table>
	</abatorContext>
</abatorConfiguration>


请参考eclipse/plugins/org.apache.ibatis.abator.doc_1.1.0/ doc.zip/core/htmldoc/index.html 文档
分享到:
评论

相关推荐

    IBatis-Abator插件自动生成代码和配置的方法

    ### IBatis-Abator插件自动生成代码和配置的方法 #### 概述 在软件开发过程中,为了提高开发效率和减少重复性工作,自动化工具变得越来越重要。其中,代码生成工具是开发人员不可或缺的好帮手之一。本文将详细介绍...

    eclipse中开发ibatis的插件abator(无注释版)

    Abator就是这样一个工具,它是一个自动化代码生成器,能够自动生成iBatis所需的SQL映射文件、DAO接口、实体类等,大大减轻了开发工作量。本教程将介绍如何在Eclipse中配置并使用无注释版的Abator插件。 首先,我们...

    Ibatis代码自动生成工具—Abator应用

    这时,Ibatis的代码自动生成工具Abator便显得尤为重要。本文将深入探讨Abator的使用方法及其带来的便利。 Abator,全称为Apache Abator,是一款基于Java的代码生成工具,主要用于简化Ibatis的开发流程,通过自动化...

    IBatis Abator去除注释版

    IBatis的代码生成器 博文链接:https://hugh-lin.iteye.com/blog/209473

    abator Ibatis

    `Abator`是`Ibatis`项目的一部分,是一个代码生成工具,能自动生成基于`Ibatis`的数据访问层(DAO)和模型(Model)代码,大大提高了开发效率。 在`Ibatis`中,数据库操作通过SQL映射文件实现,这些文件包含了SQL...

    Ibatis问题(Abator插件)

    NULL 博文链接:https://linyuliang.iteye.com/blog/1249564

    IBATIS视频入门 abator代码生成器

    在本教程中,我们将深入探讨IBATIS的基本概念、工作原理以及如何使用abator工具进行代码生成,帮助初学者快速上手。 **一、IBATIS简介** IBATIS起源于MyBatis的前身,由iBATIS公司开发,后被Apache基金会收编。它...

    iBatis自动代码生成工具abator的演示教程

    Abator则是iBatis项目的一部分,是一个强大的自动化代码生成工具,能够帮助开发者自动生成Java实体类、Mapper接口及XML配置文件等,极大地提高了开发效率。本教程将详细介绍如何使用Abator进行自动代码生成。 1. **...

    abator for ibatis

    Abator 是一个强大的工具,专为 iBatis 数据库映射框架设计,用于自动生成 Java 源代码、SQL 映射文件以及相关的构建文件。它简化了开发过程,减轻了开发者手动编写重复代码的工作负担。这个离线安装包允许你在没有...

    abator插件,ibatis插件

    Abator 插件是针对 iBatis 框架的一个自动化工具,它的主要功能是帮助开发者自动生成与 iBatis 相关的各种代码,从而提高开发效率,减少手动编写重复代码的工作量。iBatis 是一个优秀的 Java 数据库访问框架,它提供...

    Abator自动生成ibatis代码

    - **定义**:Abator是一款针对iBATIS框架的专业代码生成工具,它能够显著减少开发人员在使用iBATIS时需要手动编写的代码量,尤其是针对数据访问对象(DAO)、数据传输对象(DTO)以及SQL映射文件等的生成。...

    abator.rar

    如果你现在还用ibatis的,我这个是一个abator的工程,打开后配置abatorConfig.xml文件之后找到src-&gt;org.apache.ibatis.abator.api-&gt;AbatorRuner.java运行出现successfully表示成功,你就可以在你配置的工程下面查看...

    使用abator搭建ibatis dao框架

    本篇文章将详细介绍如何使用Abator工具搭建基于Ibatis的DAO框架。 Abator是一款自动化工具,它可以自动生成Java代码和SQL映射文件,大大简化了开发过程。下面我们将分步骤解析如何利用Abator来创建Ibatis DAO框架。...

    ibatis自动生成工具使用说明

    Abator是Ibatis官方提供的一个自动化工具,用于自动生成DAO(Data Access Object)、DTO(Data Transfer Object)和sqlMap文件,极大地提高了开发效率,同时有助于保持代码的规范性和一致性。Abator的官方网站为...

    ibatis反向生成工具

    "i2shopping-abator"可能是该反向生成工具的名字,它可能是Ibatis的一个扩展或者一个独立的工具,专门用于Ibatis项目中的反向工程。使用这样的工具,开发者只需要配置好数据库连接信息,选择需要反向生成的表,工具...

    ibatis高级自动全生成工具

    6. `AbatorDemo.rar`:Abator是一个开源的ibatis代码生成工具,它可以生成基于ibatis的模型、Mapper接口、XML文件等,这与我们讨论的高级ibatis工具类似,都是为了提高开发效率。 7. `用甲骨文连库代码.txt`:此...

Global site tag (gtag.js) - Google Analytics