Skip to content

Mybtias Plus Generator ​

Overview ​

Mybatis plus Generator can help us to generate service, domain, mapper, service from MySQL table.In this tutorial, I'll step by step you to configuration.

Maven Dependencies ​

xml
    <dependencies>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.5.7</version>
        </dependency>

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.7</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
        </dependency>
    </dependencies>

Main class ​

public class MallGenerator {

    public static void main(String[] args) {
        // 使用 FastAutoGenerator
        FastAutoGenerator.create("jdbc:mysql://localhost:3306/cloud-mall?serverTimezone=GMT%2B8", "root", "123456")
                .globalConfig(builder -> {
                    builder.author("lcd") // set author
                            .outputDir("cloud-mall-generator/src/main/java"); // out dir
                })
                .packageConfig(builder -> {
                    builder.parent("com.ssn.mall") // set parent name
                            .entity("domain") // set the model name
                            .mapper("mapper") // set Mapper interface package name
                            .service("service") // set Service interface package name
                            .serviceImpl("service.impl") // set Service impl package name
                            .xml("mapper"); // set Mapper XML file dir
                })
                .strategyConfig(builder -> {
                    builder.addInclude("sys_menu", "sys_role","sys_role_menu","sys_user","sys_user_role") // set table
                            .entityBuilder()
                            .enableLombok() // enable Lombok
                            .enableTableFieldAnnotation() // enable flied annotation
                            .controllerBuilder()
                            .enableRestStyle(); // enable REST style
                })
                .templateEngine(new FreemarkerTemplateEngine()) // use Freemarker template engine
                .execute(); // executor
    }
}

Executor ​

when exec the code, you can get the generate file,such as below image project

Conclusion ​

if you use the mybatis-plus version below 3.5.1, then you can checkout from https://baomidou.com/guides/code-generator/

Released under the MIT License.