目录

mybatis代码生成器.md

李羽秋
李羽秋 2022年01月26日  ·  阅读 1,178

mybatis代码生成器

1.前言

  1. 代码生成器顾名思义就是为我们生成一些代码,省去了我们一些时间

  2. MyBatis-Plus 的代码生成器可以生成 Entity、Mapper、Mapper XML、Service、Controller 模块代码。

2.springboot整合mybatisplus生成器

2.1配置依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-generator</artifactId>
    <version>3.4.1</version>
</dependency>
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.4.3.1</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
</dependency>
<dependency>
    <groupId>org.apache.velocity</groupId>
    <artifactId>velocity-engine-core</artifactId>
    <version>2.0</version>
</dependency>
<dependency>
    <groupId>org.freemarker</groupId>
    <artifactId>freemarker</artifactId>
    <version>2.3.30</version>
</dependency>
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid</artifactId>
    <version>1.1.9</version>
</dependency>

2.2配置datasource

spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone = GMT
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

2.3生成类

public class AutoMapper {
    public static void main(String[] args) {
        //创建AutoGenerator,MP对象
        AutoGenerator ag =new AutoGenerator();
        //设置全局配置
        GlobalConfig gc =new GlobalConfig();
        //设置代码的生成位置
        String path = System.getProperty("user.dir");
        gc.setOutputDir(path+"/src/main/java");
        //设置生成的类的名称
        gc.setMapperName("%sMapper");//所有的Dao类都是Mapper结尾,例如DeptMapper
        gc.setServiceName("%sService");//DeptService
        gc.setServiceImplName("%sServiceImpl");//DeptServiceImpl
        gc.setControllerName("%sController");//DeptController
        //设置作者
        gc.setAuthor("changming");
        //设置主键id的配置
        gc.setIdType(IdType.ID_WORKER);
        ag.setGlobalConfig(gc);
        //设置数据源DataSource
        DataSourceConfig ds = new DataSourceConfig();
        //驱动
        ds.setDriverName("com.mysql.cj.jdbc.Driver");
        //设置url
        ds.setUrl("jdbc:mysql://localhost:3306/mybatis_plus?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone = GMT");
        //设置用户名
        ds.setUsername("root");
        //设置密码
        ds.setPassword("123456");
        //把DataSource赋值给AutoGenerator
        ag.setDataSource(ds);
        //设置Package信息
        PackageConfig pc =new PackageConfig();
        //设置模块名称,相当于包名,在这个包的下面有mapper,service,controller
        pc.setModuleName("order");
        //设置父包名称,order就在父包下生成
        pc.setParent("com.example.plus");
        ag.setPackageInfo(pc);
        //设置策略
        StrategyConfig sc = new StrategyConfig();
        sc.setNaming(NamingStrategy.underline_to_camel);
        //设置驼峰命名规则
        sc.setColumnNaming(NamingStrategy.underline_to_camel);
        ag.setStrategy(sc);
        //执行生成器
        ag.execute();
    }
}
分类:
标签: