GenerateController.java 1.5 KB
package com.taover.business;

import java.io.File;
import java.io.StringWriter;

import com.taover.base.template.model.bussiness.ControllerModel;
import com.taover.base.template.model.bussiness.EnvironmentModel;
import com.taover.db.Tools;

import freemarker.template.Configuration;
import freemarker.template.Template;

public class GenerateController {

	public static void generateController(EnvironmentModel enirModel, boolean coverWhenFileExists) {
		try{
			ControllerModel model = ControllerModel.createControllerModel(
					enirModel.getControllerPackageInfo(), 
					enirModel.getPoPackageInfo(), 
					enirModel.getServicePackageInfo(), 
					enirModel.getBeanClassName(),
					enirModel.getUtilPackageInfo());
			
			File f = new File(Tools.getPath() + Constants.TEMPATE_PATH);
			Configuration cfg = new Configuration();
			cfg.setDirectoryForTemplateLoading(f);
			
			StringWriter out = new StringWriter();
			Template template = cfg.getTemplate(Constants.TEMPATE_CONTROLLERNAME, "UTF-8");		
			template.process(model, out);
			
			String destFilePath = enirModel.getControllerFilePath() + File.separator + model.getControllerClassName() + ".java";
			File destFile = new File(destFilePath);
			if(coverWhenFileExists || !destFile.exists()){
				Tools.createFile(enirModel.getControllerFilePath(), model.getControllerClassName()+".java", out.toString());	
			}else{
				System.out.println("文件生成:"+destFile.getName()+"文件已经存在,未覆盖!");
			}
		}catch(Exception e){
			e.printStackTrace();
		}
	}	
}