Abator —— IBatis 代码生成工

Abator —— IBatis 代码生成工



Abator

iBATIS简介:
使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象, 这一层与通过Hibernate 实现ORM 而言基本一致,而对于具体的数据操作,Hibernate 会自动生成SQL 语句,而ibatis 则要求开发者编写具体的SQL 语句。相对Hibernate等 “全自动”ORM机制而言,ibatis 以SQL开发的工作量和数据库移植性上的让步,为系统 设计提供了更大的自由空间。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显 得别具意义。

对于IBatis应用最烦人的重复工作就是不停的写DAO,DTO,和xml文件里面的sqlmap,其实很多时候这些工作是重复而且无聊的。好在 我们还有abator (http://ibatis.apache.org/abator.html ),一个IBatis自动生成工具,他可以帮助你生成大量的DAO,DTO和sqlmap。
如果你使用eclipse作为IDE那么事情就很简单了(相信没有几个人不在用):
安装Eclipse插件
1. 要求eclipse3.1,jdk1.4以上
2. 在eclipse上安装abator插件
    eclipse菜单栏 --> help --> Software Updates --> Find And Install...
    在弹出的对话框中选择 “Search for new features to install” 然后点击 “next”
    在对话框中点击按钮 New Remort Site...  在弹出的对话框中的URL输入框中填写 http://ibatis.apache.org/tools/abator ,Name输入框就随便写些什么了。
    点击Finish,安装插件,然后重新启动eclipse

下面测试一下功能
1. 新建一个java工程
2. 在eclipse菜单栏中兴建一个 abator 配置文件
    File -->  Abator  for  iBatis Configration File

好的,我们完成了创建配置文件,下面打abator配置文件,看看里面怎么去配置
打开后内容基本上是这样

xml 代码
<?xmlversion="1.0"encoding="UTF-8"?> <!DOCTYPE  abatorConfiguration  PUBLIC  "-//Apache  Software  Foundation//DTD  Abator  for  iBATIS  Configuration  1.0//EN"      <abatorContext><!--  TODO:  Add  Database  Connection  Information  --> <jdbcConnectiondriverClas s="???" <classPathEntrylocation="???"/> <javaModelGeneratortarget Package="???"targetProject="???"/> <sqlMapGeneratortargetPac kage="???"targetProject="???"/> <daoGenerator="IBATIS"targetPackage="???"targetProject="???"/> <tableschema="???"tableName="???"> <columnOverridecolumn="???"property="???"/> </abatorConfiguration>

你需要做的是替换一些???:
1. 填写driverClass(jdbc驱动,例如oracle的就是oracle.jdbc.driver.OracleDriver)
2. 填写connectionURL(连接字符串,例如oracle的就是jdbc:oracle:thin:@192.168.0.246:1521:test)
3. 填写classPathEntry的location(jdbc驱动jar包的位置,例如E:/project/ibatistest/WebContent/WEB-INF/lib/ojdbc14.jar)
4. 填写javaModelGenerator,生成的DTO(java model 类)
    targetPackage:目标包的位置,如 com.test.dto
    targetProject:目标工程名称,填写配置文件所在的eclipse工程名
5. 填写sqlMapGenerator ,生成的xml sqlmap的相关配置
    targetPackage:目标位置,如 com.test.sqlmap
    targetProject:目标工程名称,填写配置文件所在的eclipse工程名
6. 填写daoGenerator ,生成的DAO的相关配置
    type:生成的dao实现的类型,如果你使用spring的话写SPRING,否则写IBATIS
    targetPackage:目标位置,如 com.test.dao
    targetProject:目标工程名称,填写配置文件所在的eclipse工程名
7. 配置相关数据库的表
    schema:数据库schema,oracle就是填写数据库的用户名
    tableName:表名

xml 代码
<columnOverridecolumn="???"property="???"/>


     可以先不用配置,删除就可以了

下面开始生成:
在配置文件上点解右键,选择 “Generate iBatis Artifacts”
OK,看看生成了什么吧!

声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
我做的几个项目,一直在用这个来生成dao和xml文件,工作量减轻不少。
有些项目还自己扩展了abator

我用的是命令行方式(没用过eclipse插件):
java -cp lib/abator.jar org.apache.ibatis.abator.api.AbatorRunner -configfile abator.xml -overwrite

看看我的配置:
<?xml  version="1.0"  encoding="UTF-8"?>     <!DOCTYPE  abatorConfiguration         PUBLIC  "-//Apache  Software  Foundation//DTD  Abator  for  iBATIS  Configuration  1.0//EN"         <abatorConfiguration>             <abatorContext  id="mssql"  generatorSet="Java5">                     <jdbcConnection  driverClass="net.sourceforge.jtds.jdbc.Driver"                        connectionURL="jdbc:jtds:sqlserver://127.0.0.1:1433/db"  userId="user"  password="password">                             <classPathEntry  location="lib/jtds-1.2.jar"/>                     </jdbcConnection>                     <javaTypeResolver>                             <property  name="forceBigDecimals"  value="false"/>                     </javaTypeResolver>                     <javaModelGenerator                               targetPackage="persistence.model"  targetProject="..\project\src\main\java">                             <property  name="enableSubPackages"  value="true"/>                             <property  name="trimStrings"  value="true"/>                     </javaModelGenerator>                     <sqlMapGenerator                               targetPackage="."  targetProject="..\project\src\main\resources">                             <property  name="enableSubPackages"  value="true"/>                     </sqlMapGenerator>                     <daoGenerator  type="SPRING"                        targetPackage="persistence.dao"  targetProject="..\project\src\main\java">                             <property  name="enableSubPackages"  value="true"/>                     </daoGenerator>                     <table  schema="dbo"  tableName="%">                             <property  name="useActualColumnNames"  value="true"/>                             <!--  简写配置文件,省略发下面注解的写法,生成文件时会显示警告信息,忽略之  -->                             <generatedKey  column="ID"  sqlStatement="SqlServer"  identity="true"/>                     </table>             </abatorContext>     </abatorConfiguration>   
我们对Abator进行了定制修改,他生成的Critia比较好,我最喜欢.
只可惜类结构不太好,它是把他放在一个Example类里面的,我觉得应该可以定制这个类名.
另外好像还有一个bug,当你在Example里面调用createCritia之后,如果你没有给critia设置任何条件.最后生成的sql语句where子句后就没有条件,数据库自然会报错.



http://blog.163.com/shn_000/blog/static/17131391200892392542793/
基于bert实现关系三元组抽取python源码+数据集+项目说明.zip基于bert实现关系三元组抽取python源码+数据集+项目说明.zip基于bert实现关系三元组抽取python源码+数据集+项目说明.zip基于bert实现关系三元组抽取python源码+数据集+项目说明.zip基于bert实现关系三元组抽取python源码+数据集+项目说明.zip 个人大四的毕业设计、课程设计、作业、经导师指导并认可通过的高分设计项目,评审平均分达96.5分。主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者,也可作为课程设计、期末大作业。 [资源说明] 不懂运行,下载完可以私聊问,可远程教学 该资源内项目源码是个人的毕设或者课设、作业,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96.5分,放心下载使用! 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人智能、通信程、自动化、电子信息等)的在校学生、老师或者企业员下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),供学习参考。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值