代码生成器模板
package entity;
import java.util.Date;
import java.io.Serializable;
public class ${table.className} implements Serializable {
<#list table.columns as column>
private ${column.javaType} ${column.filedName};
</#list>
<#list table.columns as column>
public void set${column.upperFiledName}(${column.javaType} ${column.filedName}){
this.${column.filedName}=${column.filedName};
}
public ${column.javaType} get${column.upperFiledName}(){
return this.${column.filedName};
}
</#list>
}
package cn.code;
import freemarker.template.Configuration;
import freemarker.template.Template;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.util.HashMap;
import java.util.Map;
public class Generator {
private Configuration configuration;
//path 模板路径
public void init(String path) throws Exception{
configuration = new Configuration(Configuration.getVersion());
configuration.setDirectoryForTemplateLoading(new File(path));
}
//tempName模板文件的名称
// savePath 保存路径
public void process(String tempName,String savePath,Map<String,Object> param)throws Exception{
//获取模板对应实例
Template template=configuration.getTemplate(tempName);
//组装数据
//初始化保存路径
FileOutputStream fos=new FileOutputStream(savePath);
OutputStreamWriter outputStreamWriter=new OutputStreamWriter(fos);
//传参,生成数据
template.process(param,outputStreamWriter);
}
}
package cn.code;
import cn.code.Moudle.Column;
import cn.code.Moudle.Table;
import cn.code.utils.StringUtils;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
/**
* Created by zezhong.shang on 17-6-5.
*/
public class TableUtils {
private static String DBDRIVER = PropertiesUtils.get("database.properties", "driver");
private static String DBURL = PropertiesUtils.get("database.properties", "url");
private static String DBUSER = PropertiesUtils.get("database.properties", "user");
private static String DBPASS = PropertiesUtils.get("databas