mybaits-plus

一、生成代码

1.引入依赖

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <optional>true</optional>
    </dependency>
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>3.2.0</version>
    </dependency>
    <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>
        <scope>runtime</scope>
    </dependency>
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-generator</artifactId>
    <version>3.2.0</version>
</dependency>
<dependency>
    <groupId>org.apache.velocity</groupId>
    <artifactId>velocity-engine-core</artifactId>
    <version>2.1</version>
</dependency>

2.springboot配置文件中配置连接数据库信息

3.代码如下运行即可

import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
import com.baomidou.mybatisplus.generator.config.GlobalConfig;
import com.baomidou.mybatisplus.generator.config.PackageConfig;
import com.baomidou.mybatisplus.generator.config.StrategyConfig;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
/**
 * @ClassName CodeGenerator
 * @Description
 * @Author 刘志红
 * @Date 2019/12/2
 **/
public class CodeGenerator {

    /**
     * <p>
     * 读取控制台内容
     * </p>
     */

    public static void main(String[] args) {
        // 1.全局配置
        GlobalConfig gc = new GlobalConfig();
        //获取用户当前的工作目录
        String projectPath = System.getProperty("user.dir");
        //输出路径
        gc.setOutputDir(projectPath + "/src/main/java")
                //作者
                .setAuthor("liuzhihong")
                //重复执行时候覆盖
                .setFileOverride(true);
        // 2.数据源配置
        DataSourceConfig dsc = new DataSourceConfig();
        dsc.setUrl("jdbc:h2:D:/dev/db/test/test")
                // dsc.setSchemaName("public");
                .setDriverName("org.h2.Driver")
                .setUsername("root")
                .setPassword("test");
        // 3.包配置
        PackageConfig pc = new PackageConfig();
        //默认为com.baomidou我们这里设置为空
        pc.setParent("")
                .setController("com.liuzhihong.mp_demo.controller")
                .setService("com.liuzhihong.mp_demo.service")
                .setServiceImpl("com.liuzhihong.mp_demo.service.impl")
                .setMapper("com.liuzhihong.mp_demo.mapper")
                .setXml("com.liuzhihong.mp_demo.mapper")
                .setEntity("com.liuzhihong.mp_demo.entity");
        // 4.策略配置
        StrategyConfig strategy = new StrategyConfig();
        strategy.setNaming(NamingStrategy.underline_to_camel)
                .setColumnNaming(NamingStrategy.underline_to_camel)
                .setEntityLombokModel(true)
                .setRestControllerStyle(true)
                // 写于父类中的公共字段
                .setSuperEntityColumns("id")
                //需要生成的表名
                .setInclude("USER")
                .setControllerMappingHyphenStyle(true);
        strategy.setTablePrefix(pc.getModuleName() + "_");
        // 5.把上面的四个配置配入总的代码生成器中
        AutoGenerator mpg = new AutoGenerator();
        mpg.setGlobalConfig(gc)
                .setDataSource(dsc)
                .setPackageInfo(pc)
                .setStrategy(strategy);

        //6.生成代码
        mpg.execute();
    }

}
View Code
原文地址:https://www.cnblogs.com/chengxuyuan-liu/p/11970409.html