| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- package com.izouma.codegenerator;
- import com.izouma.awesomeadmin.model.GenCode;
- import com.izouma.awesomeadmin.model.TableField;
- import org.apache.commons.text.CaseUtils;
- import java.util.ArrayList;
- import java.util.List;
- public class GeneratorTool {
- public static List<String> getImports(GenCode model) {
- List<String> imports = new ArrayList<>();
- for (TableField field : model.getFields()) {
- field.setModelName(CaseUtils.toCamelCase(field.getName(), false, '_'));
- field.setSqlType(JdbcType2sqlType(field.getJdbcType()));
- switch (field.getJdbcType()) {
- case "bit":
- field.setJavaType("Boolean");
- break;
- case "tinyint":
- field.setJavaType("byte");
- break;
- case "smallint":
- field.setJavaType("short");
- break;
- case "int":
- field.setJavaType("Integer");
- break;
- case "bigint":
- field.setJavaType("Long");
- break;
- case "float":
- case "double":
- field.setJavaType("Double");
- break;
- case "decimal":
- case "numeric":
- field.setJavaType("BigDecimal");
- imports.add("import java.math.BigDecimal;");
- break;
- case "char":
- case "varchar":
- case "text":
- case "longtext":
- field.setJavaType("String");
- break;
- case "timestamp":
- case "datetime":
- case "date":
- field.setJavaType("Date");
- break;
- default:
- field.setJavaType("String");
- }
- }
- return imports;
- }
- public static String JdbcType2sqlType(String jdbcType) {
- if (jdbcType.equalsIgnoreCase("int")) {
- return "INTEGER";
- } else if (jdbcType.equalsIgnoreCase("datetime")) {
- return "TIMESTAMP";
- } else if (jdbcType.equalsIgnoreCase("nvarchar")) {
- return "VARCHAR";
- }
- return jdbcType.toUpperCase();
- }
- public static List removeDuplicated(List list) {
- List newList = new ArrayList();
- for (Object obj : list) {
- if (!newList.contains(obj)) {
- newList.add(obj);
- }
- }
- return newList;
- }
- public static void main(String[] args) {
- }
- }
|