| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- package com.izouma.codegenerator;
- import com.izouma.awesomeadmin.model.GenCode;
- import org.apache.log4j.Logger;
- import org.apache.velocity.Template;
- import org.apache.velocity.VelocityContext;
- import org.apache.velocity.app.Velocity;
- import org.apache.velocity.tools.ToolManager;
- import org.hibernate.validator.internal.util.privilegedactions.GetResource;
- import java.io.BufferedWriter;
- import java.io.File;
- import java.io.FileOutputStream;
- import java.io.OutputStreamWriter;
- import java.nio.file.Path;
- import java.nio.file.Paths;
- import java.util.*;
- public class ControllerGenerator {
- private static final Logger LOGGER = Logger.getLogger(ControllerGenerator.class);
- public static void GenController(GenCode model) {
- try {
- List<String> imports = new ArrayList<>();
- imports = GeneratorTool.removeDuplicated(imports);
- ToolManager manager = new ToolManager(true, true);
- VelocityContext context = new VelocityContext(manager.createContext());
- context.put("imports", imports);
- context.put("model", model);
- Template t = Velocity.getTemplate("ControllerTemplate.vm");
- Path targetFile = Paths.get(model.getJavaPath(), "web", model.getClassName() + "Controller.java").toAbsolutePath();
- GeneratorTool.merge(targetFile, context, t, model.getUpdate());
- LOGGER.info("成功生成Controller:" + targetFile.toString());
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
|