mybatisPlus代码生成器构造和使用

紧接着最简单的MAVEN+Spingboot+mybatisplus的多模块配置,这篇我们来研究mybatisPlus代码生成器是如何构造和使用的

构造mybatisPlus代码生成器

在pom文件中添加以下代码

 		
org.apache.velocity
velocity-engine-core
2.0
 


		child
		  
	        
	           org.mybatis.generator
	           mybatis-generator-maven-plugin
	           1.3.2
	           
	              
	                 Generate MyBatis Files
	                 
	                    generate
	                 
	                 generate
	                 
	                    true
	                    true
	                 
	              
	              
  
  
  

创建CodeGeneration.java文件

package org.child.generate;

import com.baomidou.mybatisplus.annotation.DbType;
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: CodeGeneration  * @Description: 代码生成器  * @date 2019/1/8  
 */
public class CodeGeneration {
	public static void main(String[] args) {
		AutoGenerator mpg = new AutoGenerator();

		GlobalConfig gc = new GlobalConfig();
		gc.setOutputDir("E://myproject/mybatisPlus/mybatisPlusChild/src/main/java");
		gc.setFileOverride(true);
		gc.setActiveRecord(false);// 不需要ActiveRecord特性的请改为false
		gc.setEnableCache(false);// XML 二级缓存
		gc.setBaseResultMap(true);// XML ResultMap
		gc.setBaseColumnList(false);// XML columList
		gc.setAuthor("Walle");// 作者

		// 自定义文件命名,注意 %s 会自动填充表实体属性!
		gc.setControllerName("%sController");
		gc.setServiceName("%sService");
		gc.setServiceImplName("%sServiceImpl");
		gc.setMapperName("%sMapper");
		gc.setXmlName("%sMapper");
		mpg.setGlobalConfig(gc);

		DataSourceConfig dsc = new DataSourceConfig();
		dsc.setDbType(DbType.MYSQL);
		dsc.setDriverName("com.mysql.jdbc.Driver");
		dsc.setUsername("root");
		dsc.setPassword("123456");
		dsc.setUrl("jdbc:mysql://localhost:3306/test");
		mpg.setDataSource(dsc);

		StrategyConfig strategy = new StrategyConfig();
		strategy.setTablePrefix(new String[] { "itcast_" });// 此处可以修改为您的表前缀
		strategy.setNaming(NamingStrategy.underline_to_camel);// 表名生成策略
		strategy.setInclude(new String[] { "u_test" }); // 需要生成的表

		strategy.setSuperServiceClass(null);
		strategy.setSuperServiceImplClass(null);
		strategy.setSuperMapperClass(null);

		mpg.setStrategy(strategy);

		PackageConfig pc = new PackageConfig();
		pc.setParent("org.child");
		pc.setController("controller");
		pc.setService("service");
		pc.setServiceImpl("serviceImpl");
		pc.setMapper("mapper");
		pc.setEntity("entity");
		pc.setXml("xml");
		mpg.setPackageInfo(pc);
		mpg.execute();
	}
}

使用方法

运行CodeGeneration.java
自动生成controller、service、mapper等文件
mybatisPlus代码生成器构造和使用_第1张图片
对应test表
mybatisPlus代码生成器构造和使用_第2张图片

最后给出springboot+mybatisPlus+代码生成器完整项目地址:https://github.com/TheMingH/CodeGeneration

你可能感兴趣的:(mybatisPlus代码生成器构造和使用)