• 大小: 23KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-23
  • 语言: Java
  • 标签: freemarker  

资源简介

ssm框架的代码生成器,基于freemarker的模板,模板可以按需自己修改。映射文件,映射器,service接口,service实现,controller控制器均可由本工具生成。如需生成页面文件(jsp,html等)需自己添加模板,对代码稍作修改即可。

资源截图

代码片段和文件信息

package main;

import java.io.*;
import java.sql.Connection;
import java.sql.DatabasemetaData;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetmetaData;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.apache.commons.lang3.StringUtils;

import freemarker.template.Template;



import utils.FreeMarkerTemplateUtils;

import model.ColumnClass;

public class CodeGenerateUtils {
private static String tableName = ““;//有值的话生成单表代码,否则将生成全库的代码。
private String changeTableName = replaceUnderLineAndUpperCase(tableName);
private final String AUTHOR = “lxw“;
    private final String CURRENT_DATE = “2018/05/30“;
    private final String packageName = “com.ncs.webSite“;
    private final String tableAnnotation = ““;
    private final String URL = “jdbc:mysql://127.0.0.1:3306/WebsiteCentralManager?relaxAutoCommit=true&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=UTF-8“;
    private final String USER = “root“;
    private final String PASSWORD = “111111“;
    private final String DRIVER = “com.mysql.jdbc.Driver“;
    private final String diskPath = “D://myJavaCode/“;
    
    public Connection getConnection() throws Exception{
        Class.forName(DRIVER);
        Connection connection= DriverManager.getConnection(URL USER PASSWORD);
        return connection;
    }

    public static void main(String[] args) throws Exception{
        CodeGenerateUtils codeGenerateUtils = new CodeGenerateUtils();
        Connection conn = codeGenerateUtils.getConnection();
        
        //如果单表就生成单表代码,否则就生成全库的代码。
        if(tableName!=null && !““.equals(tableName)){
        
         codeGenerateUtils.generate(conntableName);
        
        }else{
        DatabasemetaData dmd = conn.getmetaData();
        
        ResultSet rs = dmd.getTables(null null nullnew String[] { “TABLE“ });
        
        while (rs.next()){
         String tName = rs.getString(“TABLE_NAME“);
         codeGenerateUtils.generate(conntName);
        }
        }
    }

    public void generate(Connection connString tableName) throws Exception{
        try {
         CodeGenerateUtils.tableName = tableName;
         this.changeTableName = replaceUnderLineAndUpperCase(tableName);

            Statement st = conn.createStatement();

            String sql = “SELECT * FROM “+CodeGenerateUtils.tableName;

            ResultSet rs = st.executeQuery(sql);

            ResultSetmetaData resultSet = rs.getmetaData();
            //生成Mapper文件
            generateMapperFile(resultSet);
            //生成Dao文件
            generateDaoFile(resultSet);
            //生成服务层接口文件
            generateServiceInterfaceFile(resultSet);
            //生成服务实现层文件
            generateServiceImplFile(resultSet);
            //生成Controller层文件
            generateControllerFile(resultSet

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-05-15 14:53  lxw\
     文件         709  2018-05-15 14:53  lxw\.classpath
     文件         557  2018-04-18 10:53  lxw\.project
     目录           0  2018-04-18 10:53  lxw\.settings\
     文件         243  2018-04-18 10:53  lxw\.settings\org.eclipse.jdt.core.prefs
     文件         218  2018-04-18 10:53  lxw\.settings\org.maven.ide.eclipse.prefs
     文件         847  2018-04-18 15:25  lxw\pom.xml
     目录           0  2018-04-18 10:53  lxw\src\
     目录           0  2018-04-18 10:53  lxw\src\main\
     目录           0  2018-04-18 11:10  lxw\src\main\java\
     目录           0  2018-04-18 10:54  lxw\src\main\java\main\
     文件       12236  2018-07-20 10:41  lxw\src\main\java\main\CodeGenerateUtils.java
     目录           0  2018-04-18 11:10  lxw\src\main\java\model\
     文件        1130  2018-04-18 11:11  lxw\src\main\java\model\ColumnClass.java
     目录           0  2018-04-18 11:07  lxw\src\main\java\utils\
     文件        1220  2018-04-18 12:33  lxw\src\main\java\utils\FreeMarkerTemplateUtils.java
     目录           0  2018-05-15 14:05  lxw\src\main\resources\
     目录           0  2018-07-19 14:51  lxw\src\main\resources\templates\
     文件        5023  2018-07-20 09:45  lxw\src\main\resources\templates\Controller.ftl
     文件         700  2018-07-19 15:00  lxw\src\main\resources\templates\Dao.ftl
     文件        2560  2018-07-19 14:47  lxw\src\main\resources\templates\Mapper.ftl
     文件        2153  2018-07-20 10:16  lxw\src\main\resources\templates\Model.ftl
     文件        1871  2018-07-19 16:01  lxw\src\main\resources\templates\ServiceImpl.ftl
     文件         745  2018-07-19 15:03  lxw\src\main\resources\templates\ServiceInterface.ftl
     目录           0  2018-04-18 10:53  lxw\src\test\
     目录           0  2018-07-23 08:51  lxw\src\test\java\
     目录           0  2018-07-23 08:51  lxw\src\test\resources\
     目录           0  2018-04-18 10:53  lxw\target\
     目录           0  2018-07-20 08:50  lxw\target\classes\
     目录           0  2018-07-20 08:50  lxw\target\classes\main\
     文件        9488  2018-07-20 10:41  lxw\target\classes\main\CodeGenerateUtils.class
............此处省略12个文件信息

评论

共有 条评论