1.简介
rapid-generator是一个由JAVA编写的,通过数据库元数据和模板框架freemarker自动生成代码的一个开源框架。
2.实现
pom.xml
<dependency> <groupId>com.googlecode.rapid-framework</groupId> <artifactId>rapid-generator</artifactId> <version>4.0.6</version> </dependency>
generator.xml
<?xml version="1.0" encoding="GBK"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> <properties> <!-- 系统配置,详见GeneratorConstants.java --> <!-- 自动生成代码的输出路径 --> <entry key="outRoot">F:/CodeGenerator/codes</entry> <entry key="jdbc_driver">com.mysql.jdbc.Driver</entry> <entry key="jdbc_url">XXX</entry> <entry key="jdbc_username">root</entry> <entry key="jdbc_password">123456</entry> <!-- 需要移除的表名前缀,使用, \t\n\r\f进行分隔多个前缀,示例值: t_,v_ --> <entry key="tableRemovePrefixes">t_</entry> <!-- 列类型和JavaType的对应关系 --> <!-- DatabaseDataTypesUtils --> <!-- 自定义列类型和JavaType的对应关系 --> <!-- Column.initOtherProperties --> <entry key="java_typemapping.java.lang.Byte">byte</entry> <entry key="java_typemapping.java.lang.Short">short</entry> <entry key="java_typemapping.java.lang.Integer">int</entry> <entry key="java_typemapping.java.lang.Long">long</entry> <entry key="java_typemapping.java.lang.Float">float</entry> <entry key="java_typemapping.java.lang.Double">double</entry> <entry key="java_typemapping.java.lang.Boolean">boolean</entry> <entry key="java_typemapping.java.lang.String">String</entry> <entry key="java_typemapping.java.sql.Date">Date</entry> <entry key="java_typemapping.java.sql.Time">Date</entry> <entry key="java_typemapping.java.sql.Timestamp">Date</entry> <!-- 自定义变量 --> <!-- 可添加自定义的变量,在模板文件中引用 --> <entry key="basepackage">XXX</entry> </properties>
SimpleTest.java
package com.siyuan.study.codegenerator; import cn.org.rapid_framework.generator.GeneratorFacade; public class SimpleTest { public static void main(String[] args) throws Exception { GeneratorFacade g = new GeneratorFacade(); g.deleteOutRootDir(); g.getGenerator().setTemplateRootDir("F:/CodeGenerator/template"); g.generateByTable("t_activity"); } }
${className}.java
<#assign className = table.className> <#assign classNameLower = className?uncap_first> package ${basepackage}.model; <#list table.columns as column> <#if column.javaType == "Date"> import java.util.Date; <#break> </#if> </#list> public class ${className} { <#list table.columns as column> private ${column.javaType} ${column.columnName?uncap_first}; </#list> public ${className}(){ } <#list table.columns as column> public ${column.javaType} get${column.columnName?cap_first}() { return this.${column.columnName?uncap_first}; } public void set${column.columnName?cap_first}(${column.javaType} ${column.columnName?uncap_first}) { this.${column.columnName?uncap_first} = ${column.columnName?uncap_first}; } </#list> }
相关推荐
rapid-generator代码生成器源码
最快速的java代码生成器 rapid-generator
rapid-generator是一个生成器引擎,让你可以专注与代码生成器模板的编写, 可以生成如ibatis,ibatis3,hibernate,spring_mvc,struts2等等代码
易于做二次开发,整个生成器本身就是java源代码,源代码核心十分精简,并且鼓励你修改代码,也可以作为任何语言的代码生成器 配置简单,只有一个配置文件generator.properties 生成器的运行 在eclipse中运行 配置...
rapid-generator是一个生成器引擎,致力于生成目前主流Java框架的相关代码
rapid-generator是一个生成器引擎,让你可以专注与代码生成器模板的编写, 可以生成如ibatis,ibatis3,hibernate,spring_mvc,struts2等等代码. 该项目是 Rapid Framework 框架的一部分。
最快速的java代码生成器 rapid-generator.7z
基于java的开发源码-最快速的Java代码生成器 rapid-generator.zip
基于Java的实例源码-最快速的Java代码生成器 rapid-generator.zip
基于Java的最快速的Java代码生成器 rapid-generator.zip
基于java的最快速的java代码生成器 rapid-generator.zip
java源码:最快速的java代码生成器 rapid-generator.zip
读取数据库表结构,通过对字段类型、名称等分析得到需要的各种变量,根据模板生成相应的pojo类、hibernate的xml配置文件、dao和service的接口和类. 工程可以直接使用 在config文件夹下的 generator.xml里配置数据库...
代码生成器模板可以引用的相关变量 1. g.generateByTable("table_name") 方法可以引用的变量 table : cn.org.rapid_framework.generator.provider.db.model.Table 2. g.generateByClass("class") 方法可以引用的变量...
半自动化Java代码生成器[利用freemarker模板生成] 本项目Github地址: 项目最初来自于 增加一些定制和扩展, 修改为基于MAVEN的格式。 整体架构保持不变。 增加的特性为: 支持表名前缀去除,参考配置文件中的 ...
免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,...
基于Hibernate框架的包,实体代码自动生成器
半自动化Java代码生成器[利用freemarker模板生成] 本项目Github地址: 项目最初来自于 增加一些定制和扩展, 修改为基于MAVEN的格式。 整体架构保持不变。 增加的特性为: 支持表名前缀去除,参考配置文件中的 ...
本项目Github地址:https://github.com/yu Chenggroup/rapid- generator 项目最初来自于https://code.google.com/p/rapid-generator/ 增加一些定制和扩展,修改为基于MAVEN的格式。整体架构保持不变。 增加的特性...