Search in sources :

Example 6 with DbColumnType

use of com.baomidou.mybatisplus.generator.config.rules.DbColumnType in project springboot-cli by liangqiding.

the class GlobalConfigs method main.

public static void main(String[] args) {
    boolean fileOverride = false;
    GlobalConfig config = new GlobalConfig();
    String path = System.getProperty("user.dir");
    config.setActiveRecord(true).setAuthor("qiDing").setOutputDir(path + "\\src\\main\\java\\").setBaseResultMap(true).setBaseColumnList(true).setFileOverride(fileOverride);
    // ****************************** resource ***************************************
    DataSourceConfig dataSourceConfig = new DataSourceConfig();
    dataSourceConfig.setDbType(DbType.MYSQL).setUrl(DB_URL).setUsername(USERNAME).setPassword(PASSWORD).setDriverName(DRIVER_NAME).setTypeConvert(new MySqlTypeConvert() {

        @Override
        public DbColumnType processTypeConvert(GlobalConfig globalConfig, String fieldType) {
            System.out.println("转换类型:" + fieldType);
            // tinyint转换成Boolean
            if (fieldType.toLowerCase().contains("tinyint")) {
                return DbColumnType.BOOLEAN;
            }
            if (fieldType.toLowerCase().contains("datetime")) {
                return DbColumnType.DATE;
            }
            return (DbColumnType) super.processTypeConvert(globalConfig, fieldType);
        }
    });
    // ****************************** Policy configuration ******************************************************
    List<TableFill> tableFillList = new ArrayList<>();
    tableFillList.add(new TableFill("gmt_modified", FieldFill.INSERT_UPDATE));
    tableFillList.add(new TableFill("modifier_id", FieldFill.INSERT_UPDATE));
    tableFillList.add(new TableFill("creator_id", FieldFill.INSERT));
    tableFillList.add(new TableFill("gmt_create", FieldFill.INSERT));
    tableFillList.add(new TableFill("available_flag", FieldFill.INSERT));
    tableFillList.add(new TableFill("deleted_flag", FieldFill.INSERT));
    tableFillList.add(new TableFill("sync_flag", FieldFill.INSERT));
    StrategyConfig strategyConfig = new StrategyConfig();
    strategyConfig.setCapitalMode(true).setEntityLombokModel(true).setNaming(NamingStrategy.underline_to_camel).setTableFillList(tableFillList).setInclude(TABLE_NAME);
    new AutoGenerator().setGlobalConfig(config).setDataSource(dataSourceConfig).setStrategy(strategyConfig).setPackageInfo(new PackageConfig().setParent(PACKAGE).setController("controller").setEntity("domain").setMapper("dao").setXml("dao")).setTemplate(new TemplateConfig().setServiceImpl("templates/serviceImpl.java")).execute();
}
Also used : DbColumnType(com.baomidou.mybatisplus.generator.config.rules.DbColumnType) ArrayList(java.util.ArrayList) MySqlTypeConvert(com.baomidou.mybatisplus.generator.config.converts.MySqlTypeConvert) TableFill(com.baomidou.mybatisplus.generator.config.po.TableFill) AutoGenerator(com.baomidou.mybatisplus.generator.AutoGenerator)

Aggregations

AutoGenerator (com.baomidou.mybatisplus.generator.AutoGenerator)6 MySqlTypeConvert (com.baomidou.mybatisplus.generator.config.converts.MySqlTypeConvert)6 DbColumnType (com.baomidou.mybatisplus.generator.config.rules.DbColumnType)6 InjectionConfig (com.baomidou.mybatisplus.generator.InjectionConfig)2 DataSourceConfig (com.baomidou.mybatisplus.generator.config.DataSourceConfig)2 GlobalConfig (com.baomidou.mybatisplus.generator.config.GlobalConfig)2 PackageConfig (com.baomidou.mybatisplus.generator.config.PackageConfig)2 StrategyConfig (com.baomidou.mybatisplus.generator.config.StrategyConfig)2 TableFill (com.baomidou.mybatisplus.generator.config.po.TableFill)2 ArrayList (java.util.ArrayList)2 HashMap (java.util.HashMap)2 VelocityTemplateEngine (com.baomidou.mybatisplus.generator.engine.VelocityTemplateEngine)1 File (java.io.File)1 Test (org.junit.Test)1