使用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