2009年4月30日星期四

iBATIS的代码生成工具-iBATOR 试用

iBATIS的代码生成工具-iBATOR
发表时间:2008-06-24

前两天在javaeye上闲逛,无意间看到iBATIS也有代码生成的工具,这两天一直没抽着时间试试,今天利用15分钟时间试用了下,感觉还是不错的,很简单也很实用。

    iBATOR下载:http://ibatis.apache.org/ibator.html

它提供了多种格式的下载,大家有兴趣可以逐一下载研究,我用的是eclipse的插件。eclipse安装插件大家应该都明白了。呵呵

装完之后,新建一个Java
Project名为:Ibatis。工程建好好在此工程中新建配置文件:abatorConfig.xml。具体为:File-New-Abator For
iBATIS ConfigurationFile.
根据需要修改此文件。我的配置为:
<?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 >
   
<jdbcConnection driverClass="org.gjt.mm.mysql.Driver"
connectionURL="jdbc:mysql://localhost:3306/fsc" userId="root"
password="password3401" >
      <classPathEntry
location="D:\mysql-connector-java-5.0.6-bin.jar" />
   
</jdbcConnection>
    <javaModelGenerator
targetPackage="test.model" targetProject="Ibatis\src" />
   
<sqlMapGenerator targetPackage="test.xml" targetProject="Ibatis\src" />

   
    <table schema="fsc" tableName="test" >
     
<generatedKey column="id" sqlStatement="MySQL" identity="true" />

      <columnOverride column="address" property="addr" />
   
</table>
  </abatorContext>
</abatorConfiguration>

到此,一切准备工作ok
下面生成model及各种配置文件。
在abatorConfig.xml文件上鼠标右键,“Generate
iBATIS Artifacts”即可。
这样会在你指定的路径下生成model文件。
唯一遗憾的是不支持annotiation。

总的来说感觉还是不错的。

官方文档:http://ibatis.apache.org/docs/tools/abator/
-------------------------------------------------------------------

Introduction to iBATOR


iBATOR is a code generator for iBATIS. iBATOR will introspect a database table (or many tables)
and will generate iBATIS artifacts that can be used to access the table(s). This
abates some of the initial nuisance of setting up objects and configuration
files to interact with database tables. iBATOR seeks
to make a major impact on the large percentage of database operations that are
simple CRUD (Create, Retrieve, Update, Delete). You will still need to hand code
SQL and objects for custom queries, or stored procedures.


iBATOR will generate:


  • SqlMap XML Files
  • Java Classes to match the primary key and fields of the table(s)
  • DAO Classes that use the above objects (optional)

iBATOR can run as a standalone JAR file, or as an
Ant task, or as an Eclipse plugin.


iBATOR is currently under development. The legacy
version (Abator) is still available. If you have suggestions for the future of
iBATOR, please feel free to send them to the Java
user's mailing list..


About the Name


iBATOR is an iBATIS stylized version of the English word "abator". Abator
means "one who abates a nuisance".


iBATOR
News


(April 14, 2008) Due to a trade registration dispute, Abator is renamed to
iBATOR. iBATOR is currently under development. The initial source code drop can
be checked out from SVN at
http://svn.apache.org/repos/asf/ibatis/trunk/java/tools/ibator/


(March 20, 2008) Updated Abator and the Eclipse plugin to version 1.1.0. This
is an extensive update that includes quite a few minor enhancements, two major
enhancements (two new methods can be generated), and a few bug fixes. See the
What's New? section of the online documentation for full details.


(August 20, 2006) Updated Abator and the Eclipse plugin to version 1.0.0.
This is an extensive update that includes many new features including the
ability to generate code for Java 5, generate different types of domain models,
and hugely improved "by example" methods. See the "What's New?" section of the
online documentation for full details.


iBATOR Development


iBATOR is currently under development. iBATOR will not be 100% compatible
with Abator, but will be very close. Known differences include:



Legacy
Abator Software Downloads and Documentation


Download the standalone JAR if you are using an IDE other than Eclipse. The
standalone JAR includes an Ant task to run Abator, or you can run Abator from
the command line of from Java code.



Documentation for the core functions of Abator is available online. This
documentation set is also included in the downloads, and is integrated into the
Eclipse help system if you are using the Eclipse plugin.


Documentation for the Eclipse specific features is integrated into the
Eclipse help system and is not available online.



Eclipse Plugin


When run as an Eclipse plugin, Abator will persist the generated Java classes
and SqlMap files in Eclipse projects. Abator can be run iteratively multiple
time as the database design matures - and any hand coded additions to generated
Java classes or SqlMap files will remain undisturbed.


Documentation for Abator is integrated into the Eclipse help system.


Requirements



Automatic Eclipse
Install


If you've already installed a prior version of Abator, simply run the Eclipse
Install/Update tool and the new version will be found automatically.


If you've not already installed Abator, then you can use the built in Eclipse
install support by following these steps:


  1. Take the "Help>Software Updates>Find and Install" Menu Option
  2. Select the "Search for new features to install" radio button, press "Next"
  3. Press the "New Remote Site" button
  4. Enter the following information: Name:Abator for Eclipse Update
    SiteURL:
    http://ibatis.apache.org/tools/abator
  5. Press OK
  6. Check the box next to "Abator for Eclipse Update Site"
  7. Follow the remainder of the install wizard

Manual Eclipse
Install


The automatic install is much preferred, but you can also install Abator
manually if you desire. To install manually, download the file
AbatorForEclipse1.1.0.zip and unzip the file to some convenient location. After
unzipping the update site archive, follow these steps in Eclipse:


  1. Take the "Help>Software Updates>Find and Install" Menu Option
  2. Select the "Search for new features to install" radio button, press "Next"
  3. Press the "New Local Site" button
  4. Navigate to the location where you unzipped the file.
  5. Press OK
  6. Follow the remainder of the install wizard


配置文件abatorConfig.xml示例


<?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>    <!-- TODO: Add
Database Connection Information -->
    <jdbcConnection
driverClass="oracle.jdbc.driver.OracleDriver"
       
connectionURL="jdbc:oracle:thin:@192.168.0.17:1521/fcg"
       
userId="fcg"
        password="fcg">
      <classPathEntry
location="E:\Tomcat6.0\lib\ojdbc14-10.2.0.1.0.jar" />
   
</jdbcConnection>


     <javaTypeResolver >
      <property name="forceBigDecimals"
value="false" />
    </javaTypeResolver>


    <!--
    <javaModelGenerator targetPackage="abator"
targetProject="FCG\test">
      <property name="enableSubPackages"
value="true" />
      <property name="trimStrings" value="true"
/>
    </javaModelGenerator>


    <sqlMapGenerator targetPackage="abator" 
targetProject="FCG\test">
      <property name="enableSubPackages"
value="true" />
    </sqlMapGenerator>


    <daoGenerator type="SPRING" targetPackage="abator" 
targetProject="FCG\test">
      <property name="enableSubPackages"
value="true" />
    </daoGenerator>


    <table schema="fcg" tableName="users" domainObjectName="User"
>
       <property name="useActualColumnNames"
value="true"/>    
     
      <generatedKey column="ID"
sqlStatement="DB2" identity="true" />
      <columnOverride
column="DATE_FIELD" property="startDate" />
      <ignoreColumn
column="FRED" />
      <columnOverride column="LONG_VARCHAR_FIELD"
jdbcType="VARCHAR" />
    </table>-->
    <!-- 
-->
    <javaModelGenerator targetPackage="abator"
targetProject="FCG\test" />   
      <sqlMapGenerator
targetPackage="abator" targetProject="FCG\test" />   
    <daoGenerator
type="SPRING" targetPackage="abator" targetProject="FCG\test" />  
    
<!--
    <table tableName="USERS" />   
    <table
tableName="COMPONENTS" />   
    <table tableName="ROLES" /> 
   
<table tableName="RESOURCES" />-->
    <table
tableName="import_railroad_fee_check" />
 
</abatorContext>
</abatorConfiguration>


1下载插件for eclipse


2将配置文件放入src根目录


3更改数据库路径,ojbdc路径


4在test目录下建立abator目录


5 tableName修改为需要自动生成代码的表名


6 在配置文件上右键,会出现生成代码的选项


没有评论:

指定目录的图片2值化

```python # -*- coding: utf-8 -*- """指定目录的图片,自适应2值化 """ import os from PIL import Image import numpy as np imp...