spring5 + mybatis-plus3自動生成代碼

一、寫在前面

spring5 + mybatis-plus3 自動生成 Entity、Mapper、Mapper XML、Service、Controller 等各個模塊的代碼。

 

二、具體實現

1.maven依賴

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-webmvc</artifactId>
  <version>5.0.3.RELEASE</version>
</dependency>
<dependency>
  <groupId>com.baomidou</groupId>
  <artifactId>mybatis-plus</artifactId>
  <version>3.2.0</version>
</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.0</version>
</dependency>
<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>5.1.48</version>
</dependency>
<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-api</artifactId>
  <version>1.7.25</version>
</dependency>

2.主要代碼

package com.yale.utils;

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;
import org.springframework.core.io.support.ResourcePropertySource;

public class CodeGenerator {
    public static void main(String[] args) throws Exception {
        //讀取jdbc.properties
        ResourcePropertySource propertySource = new ResourcePropertySource("jdbc.properties");

        // 代碼生成器
        AutoGenerator mpg = new AutoGenerator();

        // 全局配置
        GlobalConfig gc = new GlobalConfig();
        gc.setOutputDir("D:\\work\\workspace\\novel_maven\\src\\main\\java");//輸出文件夾
        gc.setOpen(false); //關閉自動打開輸出文件夾
        mpg.setGlobalConfig(gc);

        // 包配置
        PackageConfig pc = new PackageConfig();
        pc.setParent("com.yale.test");
        mpg.setPackageInfo(pc);

        // 策略配置
        StrategyConfig strategy = new StrategyConfig();
        strategy.setNaming(NamingStrategy.underline_to_camel);  //駝峯命名
        strategy.setColumnNaming(NamingStrategy.underline_to_camel);    //駝峯命名
        strategy.setInclude("user", "novel_chapter"); //指定數據庫表
        mpg.setStrategy(strategy);

        // 數據源配置
        DataSourceConfig dsc = new DataSourceConfig();
        dsc.setUrl((String)propertySource.getProperty("jdbc.url"));
        dsc.setDriverName((String) propertySource.getProperty("jdbc.driver"));
        dsc.setUsername((String) propertySource.getProperty("jdbc.username"));
        dsc.setPassword((String) propertySource.getProperty("jdbc.password"));
        mpg.setDataSource(dsc);

        //執行
        mpg.execute();
    }
}

3.目錄結構

 

4.jdbc配置

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/novel?useUnicode=true&characterEncoding=utf8
jdbc.username=root
jdbc.password=root

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章