import java.io.BufferedWriter;import java.io.File;import java.io.FileWriter;import java.io.IOException;import java.io.StringWriter;import java.util.Properties;import org.apache.velocity.Template;import org.apache.velocity.VelocityContext;import org.apache.velocity.app.VelocityEngine;public class Test ...{ private static Properties props = null; /** *//** * @param args * @throws Exception */ public static void main(String[] args) throws Exception ...{ // TODO Auto-generated method stub /**//* first, get and initialize an engine */ VelocityEngine ve = new VelocityEngine(); ve.init(); /**//* next, get the Template */ Template t = ve.getTemplate( "src/Action.vm","gb2312" ); // Template t = ve.getTemplate( "src/Action.vm" ); //如果改为上面则出现乱码. /**//* create a context and add data */ VelocityContext context = new VelocityContext(); Object[] classNames=null;// classNames.add("Jgss");// classNames.add("Jgfs");// classNames.add("Tcfj"); classNames=prop2List(); for(int i=0;i<classNames.length;i++ )...{ context.put("className", classNames[i]); /**//* now render the template into a StringWriter */ StringWriter writer = new StringWriter(); t.merge( context, writer ); writeJavaFile(classNames[i]+"Action.java",writer.toString()); /**//* show the World */ // System.out.println( writer.toString() ); } } private static void writeJavaFile(String name, String str) ...{ try ...{ FileWriter fw = new FileWriter(new File(name), true); BufferedWriter bw = new BufferedWriter(fw); // 将读入的字符串写入到文件中 bw.write(str, 0, str.length()); bw.flush(); bw.close(); fw.close(); } catch (IOException e) ...{ System.out.println("Error-- :" + e.toString()); } } private static void loadProperties()...{ props = new Properties(); try ...{ props.load(Test.class.getResourceAsStream("action.properties")); } catch (IOException e) ...{ // TODO Auto-generated catch block e.printStackTrace(); } } private static Object[] prop2List()...{ loadProperties(); System.out.println(props.size()); if(props.isEmpty()) return null; Object[] aa = props.values().toArray(); return aa; } } 部分Action.vm代码:public ActionForward edit$...{className}(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception ...{ logger.debug("--- edit${className} start ---"); checkToken(request); $...{className}Form $...{className.toLowerCase()}Form = ($...{className}Form)form;action.properties:A=JaaasB=JbbbsC=Tcccs