天天看點

MybatisPlus自動生成(代碼生成器)

MybatisPlus自動生成代碼

    • POM依賴
    • 樣闆代碼

POM依賴

<dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version></version>
    </dependency>
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-generator</artifactId>
        <version></version>
    </dependency>
           

樣闆代碼

//01配置連結資料源
    public static DataSourceConfig dataSource() {
        DataSourceConfig dataSourceConfig = new DataSourceConfig();
        dataSourceConfig.setDbType(DbType.MYSQL);
        /**************這裡請填寫你的ip和你的端口号及資料庫名稱**************/
        dataSourceConfig.setUrl("jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8");
        /**************您的賬号**************/
        dataSourceConfig.setUsername("root");
        /**************您的密碼**************/
        dataSourceConfig.setPassword("root");
        //您的資料庫引擎
        dataSourceConfig.setDriverName("com.mysql.cj.jdbc.Driver");
        return dataSourceConfig;
    }

    //02配置全局
    public static GlobalConfig globalConfig() {
        GlobalConfig globalConfig = new GlobalConfig();
        /**************路徑**************/
        globalConfig.setOutputDir("X:\\xxx\\" + "/src/main/java");
        //不會預設打開檔案夾
        globalConfig.setOpen(false);
        //建立者
        globalConfig.setAuthor("xxx");
        //建立serviceImpl不會有大寫的I
        globalConfig.setServiceName("%sService");
        return globalConfig;
    }

    //03配置包資訊
    public static PackageConfig packageConfig() {
        PackageConfig packageConfig = new PackageConfig();
        /**************父級包名**************/
        packageConfig.setParent("com.xxxxx");
        //父級包名稱
        packageConfig.setModuleName("generator");
        packageConfig.setController("controller");
        packageConfig.setService("service");
        packageConfig.setServiceImpl("service.impl");
        packageConfig.setMapper("mapper");
        packageConfig.setEntity("entity");
        return packageConfig;
    }

    //04配置政策
    public static StrategyConfig strategyConfig(){
        StrategyConfig strategyConfig = new StrategyConfig();
        //添加lombok
        strategyConfig.setEntityLombokModel(true);
        //下劃線轉駝峰
        strategyConfig.setNaming(NamingStrategy.underline_to_camel);
        //同上
        strategyConfig.setColumnNaming(NamingStrategy.underline_to_camel);
        /**************要生成的表名**************/
        strategyConfig.setInclude("xxx");
        return strategyConfig;
    }

    public static void main(String[] args) {
        //建立generator對象
        AutoGenerator autoGenerator = new AutoGenerator();
        //連結配置
        autoGenerator.setDataSource(dataSource());
        //全局配置
        autoGenerator.setGlobalConfig(globalConfig());
        //包資訊
        autoGenerator.setPackageInfo(packageConfig());
        //配置政策
        autoGenerator.setStrategy(strategyConfig());
        //去吧皮卡丘
        autoGenerator.execute();
    }