x1ongzhu há 6 anos atrás
pai
commit
43f2b2b3e6

+ 7 - 24
src/main/java/com/izouma/codegenerator/TableGenerator.java

@@ -54,9 +54,7 @@ public class TableGenerator {
     public static void GenTable(GenCode model) throws Exception {
         Connection conn = null;
         try {
-
             String DRIVER = "com.mysql.jdbc.Driver";
-
             PropertiesFileLoader propertiesFileLoader = PropertiesFileLoader.getInstance();
 
             //基础数据库
@@ -64,12 +62,9 @@ public class TableGenerator {
             String user = propertiesFileLoader.getProperties("properties/jdbc.properties", "jdbc.username");
             String password = propertiesFileLoader.getProperties("properties/jdbc.properties", "jdbc.password");
 
-
             if (!"dataSource".equals(model.getDataSourceCode())) {//如果不是基础数据库
-
                 //获取数据源配置信息
                 DataSourceInfo dataSourceInfo = Const.DataSourceInfoMap.get(model.getDataSourceCode());
-
                 if ("Mysql".equals(dataSourceInfo.getDatabaseType())) {
                     url = "jdbc:mysql://" + dataSourceInfo.getUrl() + "/" + dataSourceInfo.getDatabaseName();
                     user = dataSourceInfo.getUsername();
@@ -80,10 +75,8 @@ public class TableGenerator {
                     user = dataSourceInfo.getUsername();
                     password = dataSourceInfo.getPassword();
                 }
-
             }
 
-
             conn = JDBC.connectDB(DRIVER, url, user, password);
 
             Statement stmt = conn.createStatement();
@@ -126,22 +119,16 @@ public class TableGenerator {
                     tableField.setLength(0);
                 }
 
-
                 if ("Mysql".equals(model.getDataBaseType())) {
-
-                    fieldSql.append(" ").append(tableField.getName()).append(" ").append(tableField.getJdbcType()).append("(").append(tableField.getLength()).append(")");
-
+                    fieldSql.append(" `").append(tableField.getName()).append("` ").append(tableField.getJdbcType()).append("(").append(tableField.getLength()).append(")");
                 } else if ("SqlServer".equals(model.getDataBaseType())) {
                     if ("int".equals(tableField.getJdbcType())) {
-
                         fieldSql.append(" ").append(tableField.getName()).append(" ").append(tableField.getJdbcType());
                     } else {
                         fieldSql.append(" ").append(tableField.getName()).append(" ").append(tableField.getJdbcType()).append("(").append(tableField.getLength()).append(")");
                     }
-
                 }
 
-
                 if (tableField.getNotNull()) {
                     fieldSql.append(" not null ");
                 }
@@ -150,23 +137,22 @@ public class TableGenerator {
                 }
                 if (tableField.getAutoIncrease()) {
                     if ("Mysql".equals(model.getDataBaseType())) {
-
                         fieldSql.append(" auto_increment ");
-
                     } else if ("SqlServer".equals(model.getDataBaseType())) {
                         fieldSql.append(" identity(1,1) ");
                     }
-
+                }
+                if ("timestamp".equalsIgnoreCase(tableField.getJdbcType()) && StringUtils.isEmpty(tableField.getDefaultValue())) {
+                    tableField.setDefaultValue("null");
                 }
                 if (StringUtils.isNotEmpty(tableField.getDefaultValue())) {
                     if ("CURRENT_TIMESTAMP".equals(tableField.getDefaultValue())) {
-
-                        fieldSql.append(" default " + " ").append(tableField.getDefaultValue()).append(" ");
-
+                        fieldSql.append(" default ").append(tableField.getDefaultValue()).append(" ");
                         if ("update_time".equals(tableField.getName())) {
                             fieldSql.append(" ON UPDATE CURRENT_TIMESTAMP ");
                         }
-
+                    } else if ("null".equalsIgnoreCase(tableField.getDefaultValue())) {
+                        fieldSql.append(" NULL ");
                     } else {
                         if ("bit".equalsIgnoreCase(tableField.getJdbcType())) {
                             fieldSql.append(" default ").append(tableField.getDefaultValue());
@@ -184,20 +170,17 @@ public class TableGenerator {
                 fieldSqlList.add(fieldSql.toString());
             }
             sql.append(StringUtils.join(fieldSqlList, ",")).append(")");
-
             if (StringUtils.isNotEmpty(model.getRemark())) {
                 if ("Mysql".equals(model.getDataBaseType())) {
                     sql.append(" comment = '").append(model.getRemark()).append("'");
                 }
             }
-
             System.out.println(sql);
             stmt.execute("DROP TABLE IF EXISTS " + model.getTableName());
             int result = stmt.executeUpdate(sql.toString());
             if (result != -1) {
                 System.out.println("创建数据表成功");
             }
-
         } catch (Exception e) {
             e.printStackTrace();
         } finally {

+ 3 - 41
src/main/resources/templates/ControllerTemplate.vm

@@ -20,9 +20,6 @@ import com.izouma.awesomeadmin.service.${model.className}Service;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-/**
-*  controller类
-*/
 @Controller
 @RequestMapping("/$display.uncapitalize($model.className)")
 public class ${model.className}Controller {
@@ -30,9 +27,6 @@ public class ${model.className}Controller {
     @Autowired
     private ${model.className}Service $display.uncapitalize(${model.className})Service;
 
-    /**
-    * <p>获取全部记录。</p>
-    */
     @RequiresAuthentication
     @RequestMapping(value = "/all", method = RequestMethod.GET)
     @ResponseBody
@@ -41,9 +35,6 @@ public class ${model.className}Controller {
         return new Result(true, pp);
     }
 
-    /**
-    * <p>根据Id。</p>
-    */
     @RequestMapping(value = "/get${model.className}", method = RequestMethod.GET)
     @ResponseBody
     public Result get${model.className}(@RequestParam(required = false, value = "id") String id) {
@@ -51,9 +42,6 @@ public class ${model.className}Controller {
         return new Result(true, data);
     }
 
-    /**
-    * <p>根据条件获取。</p>
-    */
     @RequestMapping(value = "/getOne", method = RequestMethod.GET)
     @ResponseBody
     public Result getOne(${model.className} record) {
@@ -61,10 +49,6 @@ public class ${model.className}Controller {
         return new Result(true, data);
     }
 
-
-    /**
-    * <p>分页查询。</p>
-    */
     @RequestMapping(value = "/page", method = RequestMethod.GET)
     @ResponseBody
     public Result page(Page page, ${model.className} record) {
@@ -77,10 +61,6 @@ public class ${model.className}Controller {
         return new Result(true, result);
     }
 
-
-    /**
-    * <p>保存。</p>
-    */
     @RequestMapping(value = "/save", method = RequestMethod.POST)
     @ResponseBody
     public Result save(${model.className} record) {
@@ -91,9 +71,6 @@ public class ${model.className}Controller {
         return new Result(false, "保存异常");
     }
 
-    /**
-    * <p>更新信息。</p>
-    */
     @RequestMapping(value = "/update", method = RequestMethod.POST)
     @ResponseBody
     public Result update${model.className}(${model.className} record) {
@@ -104,9 +81,6 @@ public class ${model.className}Controller {
         return new Result(false, "保存异常");
     }
 
-    /**
-    * <p>删除。</p>
-    */
     @RequestMapping(value = "/del", method = RequestMethod.POST)
     @ResponseBody
     public Result delete${model.className}(${model.className} record) {
@@ -118,19 +92,11 @@ public class ${model.className}Controller {
         return new Result(false, "删除异常");
     }
 
-    /**
-    * 导出Excel
-    * @param request
-    * @param response
-    * @param record
-    * @throws Exception
-    */
     @RequestMapping(value = "/exportExcel", method = RequestMethod.GET)
     @ResponseBody
     public void exportExcel(HttpServletRequest request, HttpServletResponse response, ${model.className} record) throws Exception {
 
-    List<${model.className}> ${display.uncapitalize(${model.className})}s = ${display.uncapitalize(${model.className})}Service.get${model.className}List(record);
-
+        List<${model.className}> ${display.uncapitalize(${model.className})}s = ${display.uncapitalize(${model.className})}Service.get${model.className}List(record);
 
         String sheetName = "${model.tableName}";
         String titleName = "${model.remark}数据表";
@@ -141,17 +107,13 @@ public class ${model.className}Controller {
         String[][] dataList = new String[${display.uncapitalize(${model.className})}s.size()][${model.fields.size()}];
 
         for (int i = 0; i < ${display.uncapitalize(${model.className})}s.size(); i++) {
-
             #foreach(${field} in ${model.fields})
             dataList[i][${foreach.index}] = String.valueOf(${display.uncapitalize(${model.className})}s.get(i).get${display.capitalize($field.modelName)}());
             #end
         }
 
-
         ExportExcelUtil.ExportWithResponse(sheetName, titleName, fileName,
-        columnNumber, columnWidth, columnName, dataList, response);
-
-
-        }
+                columnNumber, columnWidth, columnName, dataList, response);
     }
+}