jsp文件做模板文件生成代码

pojo类的jsp模板

 1 <%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="UTF-8"%>
 2 <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
 3 <%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
 4 <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
 5 /*
 6  * @(#)${ModelName}.java $$Revision: 1.1 $$ $$Date: 2013/01/23 03:49:23 $$
 7  *
 8  * Copyright 2000 TopFounder. All rights reserved.
 9  */
10 package com.${companyname}.${projectname}.${modulename}.${modelname};
11 
12 /**
13  * This file used to <br>
14  * Created by ${author}
15  */
16 public class ${ModelName} {
17     <c:forEach var="field" items="${fields}">
18     //this field is ${field.desc}
19     private ${field.type} ${field.fieldName} ;
20     </c:forEach>
21     <c:forEach var="field" items="${fields}">
22     public ${field.type} get${field.FieldName}(){
23         return this.${field.fieldName};
24     } 
25     
26     public void set${field.FieldName}(${field.type} ${field.fieldName}){
27         this.${field.fieldName}=${field.fieldName};
28     }</c:forEach>  
29 }

 

生成pojo类的java核心代码

public static String createStaticHTMLPage(HttpServletRequest request,
            HttpServletResponse response, ServletContext servletContext,
            String fileFullPath, String jspPath) throws ServletException,
            IOException {
        response.setContentType("text/html;charset=UTF-8");
        RequestDispatcher rd = servletContext.getRequestDispatcher(jspPath);//jspPath为模板的jsp文件名
        final ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
        final ServletOutputStream servletOuputStream = new ServletOutputStream() {
            public void write(byte[] b, int off, int len) {
                byteArrayOutputStream.write(b, off, len);
            }

            public void write(int b) {
                byteArrayOutputStream.write(b);
            }
        };
        final PrintWriter printWriter = new PrintWriter(new OutputStreamWriter(
                byteArrayOutputStream, "UTF-8"));
        HttpServletResponse httpServletResponse = new HttpServletResponseWrapper(
                response) {
            public ServletOutputStream getOutputStream() {
                return servletOuputStream;
            }

            public PrintWriter getWriter() {
                return printWriter;
            }
        };
        rd.include(request, httpServletResponse);
        printWriter.flush();
        File codeFile = new File(fileFullPath);//需要生成的pojo的文件,如果BaseUser.java
        FileUtils.createDirAndFile(codeFile);
        FileOutputStream fileOutputStream = new FileOutputStream(codeFile);
        byteArrayOutputStream.writeTo(fileOutputStream);
        fileOutputStream.close();
        return fileFullPath;
        // response.sendRedirect(fileName);
    }

 

 

posted @ 2013-03-25 15:54  自行车上的程序员  阅读(2200)  评论(0编辑  收藏  举报