分享

IBatis的自动生成工具abator的改造

 WindySky 2009-03-19

使用abator生成的代码,最大的问题就是它的注释问题!一大堆的"abatorgenerate_",为了代码的可读性,只好download下原代码,进行改造!改造的主要目的是:给生成model、dao、daoImpl的文件加上中文的注释,并且给Model文件的属性设置初始化值。
目前已经改造完成,可以添加中文注释,abatorConfig.xml中改动了“table”元素,如下:
<table tableName="CORPLOGO" domainObjectName="CorpLogo" enableSelectByExample="false"
   enableDeleteByExample="false" selectByExampleQueryId="false" comment="企业商标">
   <property name="useActualColumnNames" value="true" />
   <columnOverride column="uploadDateTime" property="uploadDateTime" jdbcType="DATE" comment="上传时间" />
  </table>
增加的comment的属性
示例:生成的Model文件如下:
CorpLogo.java (注:cno字段没有配置)
package cn.test;

import java.util.Date;

/**
* 企业商标
*/
public class CorpLogo {
    private String CNO = "";
    private Date uploadDateTime = null;
    private String UPLOADFILENAME = "";
    private String LOGOPICFILEPATH = "";
    private String OPERUSERID = "";

    public String getCNO() {
        return CNO;
    }

    public void setCNO(String CNO) {
        this.CNO = CNO;
    }

    /**
     * @return 上传时间
     */
    public Date getUploadDateTime() {
        return uploadDateTime;
    }

    /**
     * @param uploadDateTime 上传时间
     */
    public void setUploadDateTime(Date uploadDateTime) {
        this.uploadDateTime = uploadDateTime;
    }

    public String getUPLOADFILENAME() {
        return UPLOADFILENAME;
    }

    public void setUPLOADFILENAME(String UPLOADFILENAME) {
        this.UPLOADFILENAME = UPLOADFILENAME;
    }

    public String getLOGOPICFILEPATH() {
        return LOGOPICFILEPATH;
    }

    public void setLOGOPICFILEPATH(String LOGOPICFILEPATH) {
        this.LOGOPICFILEPATH = LOGOPICFILEPATH;
    }

    public String getOPERUSERID() {
        return OPERUSERID;
    }

    public void setOPERUSERID(String OPERUSERID) {
        this.OPERUSERID = OPERUSERID;
    }
}
涉及到改动文件大体如下:
org.apache.ibatis.abator.api.FullQualifiedTable
org.apache.ibatis.abator.config.TableConfiguration
org.apache.ibaits.abator.internal.db.ColumnDefinition
org.apache.ibatis.abator.internal.db.DatabaseIntrospector
org.apache.ibatis.abator.internal.java.dao.AbstractDaoTemplate
org.apache.ibatis.abator.internal.java.dao.BaseDaoGenerator
org.apache.ibatis.abator.api.dom.java.InnerClass
org.apache.ibatis.abator.api.dom.java.Field
org.apache.ibatis.abator.api.dom.java.Method
org.apache.ibatis.abator.api.dom.java.TopLevelClass
org.apache.ibatis.abator.api.dom.java.Interface
org.apache.ibatis.abator.api.dom.xml.XmlElement
org.apache.ibatis.abator.internal.java.model.JavaModelGeneratorJava2Impl
org.apache.ibatis.abator.internal.java.model.JavaModelGeneratorJava5Impl
org.apache.ibatis.abator.internal.sqlmap.SqlMapGeneratorIterateImpl

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多