资源简介
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.xm
目录 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个文件信息
- 上一篇:Java 魔板游戏
- 下一篇:java 图片压缩处理支持gif动态图的压缩
评论
共有 条评论