CodeGenerator 代码生成工具

我要开发同款
匿名用户2015年10月12日
38阅读
开发技术Java
所属分类程序开发、代码生成工具
授权协议Apache

作品详情

CodeGenerator是一个使用Freemarker和Velocity模板来生代码的工具。

本生成器只是将数据库中的表结构数据提取出来,然后将这份结构模型提交给模板引擎,根据你自定义的模板生成你需要的代码。

配置文件    <?xml version="1.0" encoding="utf-8" standalone="no"?>    <configuration>        <classpath>            <!-- 引入JDBC驱动,手动添加 -->            <entry>lib/mysql-connector-java-5.1.36-bin.jar</entry>        </classpath>        <!-- 代码生成目标基准目录 -->        <tagertProject>D:\temp</tagertProject>        <!-- 基本包 -->        <basePackage>org.joy</basePackage>        <!-- 模块名 -->        <moduleName>test</moduleName>        <templates>            <!-- 模板 ,手动添加 -->            <template name="实体类" engine="freemarker">                <!-- 模板文件 -->                <templateFile>./entity.ftl</templateFile>                <!-- 文件路径 -->                <targetPath>${tagertProject}\src\${basePackage}\${moduleName}\entity\</targetPath>                <!-- 文件名 -->                <targetFileName>${table.className}.java</targetFileName>                <!-- 文件编码 -->                <fileEncoding>UTF-8</fileEncoding>            </template>        </templates>    </configuration>模板中可用的变量和方法String       tagertProject       目标工程路径(代码保存的基准路径)String       basePackage         基准包String       moduleName          模块名table对象属性String       tableName           表名String       tableType           表类型String       tableAlias          表别名String       remarks             表注释String       remarksUnicode      表注释转Unicode后的字符串String       className           实体类名String       javaProperty        实体类作为属性时的名字 == ${table.className?uncap_first}List<Column> primaryKeys         主键集List<Column> baseColumns         基本字段集List<Column> columns             所有字段  == primaryKeys + baseColumnsList<Key>    importedKeys        所有 importedKeysList<Key>    exportedKeys        所有 exportedKeysboolean      hasDateColumn       是否有日期类型字段boolean      hasBigDecimalColumn 是否有 BigDecimal 字段boolean      hasNotNullColumn    是否有非空的基本类型字段boolean      hasNotBlankColumn   是否有非空的 String 字段Column属性String  columnName        字段名boolean primaryKey        是否为主键boolean foreignKey        是否为外键int     size              字段长度int     decimalDigits     小数位长度boolean nullable          是否可空boolean unique            是否唯一值boolean indexed           是否有索引String  defaultValue      默认值String  remarks           注释String  remarksUnicode    数字转Unicode后的字符串int     jdbcType          对应 java.sql.TypesString  jdbcTypeName      对应jdbcType的名称String  javaProperty      属性名String  javaType          java类型,比如StringString  fullJavaType      完整的Java类型,比如 java.lang.StringString  getterMethodName  Get方法名String  setterMethodName  Set方法名方法boolean isString()        是否是字符串boolean isFloatNumber()   是否是浮点型,含Float、Double、BigDecimalboolean isIntegerNumber() 是否是整型,含Byte、Short、Integer、Longboolean isBigDecimal()    是否是BigDecimal类型boolean isBoolean()       是否是布尔类型boolean isDate()          是否有日期类型,含Date、Timestamp、Timeboolean isBLOB()          是否有 BLOB、CLOB、LONGVARCHAR、LONGVARBINARY或VARBINARYKeyString  pkTableName       PKTABLE_NAMEString  pkColumnName      PKCOLUMN_NAMEString  fkTableName       FKTABLE_NAMEString  fkColumnName      FKCOLUMN_NAMEInteger seq               KEY_SEQ
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论