mybatis-plus 代码生成器

所需jar

<!--mybatis-plus 相关依赖-->
	<dependency>
		<groupId>com.baomidou</groupId>
		<artifactId>mybatis-plus-boot-starter</artifactId>
		<version>3.3.1</version>
	</dependency>

	<!--mybatis-plus代码生成器 相关依赖-->
	<dependency>
		<groupId>com.baomidou</groupId>
		<artifactId>mybatis-plus-generator</artifactId>
		<version>3.3.1</version>
	</dependency>

	<!--代码生成器模板引擎 相关依赖-->
	<dependency>
		<groupId>org.apache.velocity</groupId>
		<artifactId>velocity-engine-core</artifactId>
		<version>2.2</version>
	</dependency>
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;

import java.util.Scanner;

/**
 * mybatis-plus 代码生成器
 */
public class CodeGenerator {
     

    /**
     * 

* 读取控制台内容 *

*/
public static String scanner(String tip) { Scanner scanner = new Scanner(System.in); StringBuilder help = new StringBuilder(); help.append("请输入" + tip + ":"); System.out.println(help.toString()); if (scanner.hasNext()) { String ipt = scanner.next(); if (StringUtils.isNotEmpty(ipt)) { return ipt; } } throw new MybatisPlusException("请输入正确的" + tip + "!"); } public static void main(String[] args) { // 全局配置 GlobalConfig gc = new GlobalConfig(); //是否支持AR模式 gc.setActiveRecord(true) .setAuthor("zyh") //作者 .setOutputDir("D:\\workspace_my\\mp03\\src\\main\\java") //生成路径 .setFileOverride(true)//是否文件覆盖,如果多次 .setServiceName("%sService") //设置生成的service接口名首字母是否为I .setIdType(IdType.AUTO) //主键策略 .setBaseResultMap(true)//开启 BaseResultMap 默认false .setEntityName("%sEntity")//实体命名方式 默认值:null 例如:%sEntity 生成 UserEntity .setMapperName("%sMapper")//mapper 命名方式 默认值:null 例如:%sDao 生成 UserDao .setXmlName("%sMapper")//Mapper xml 命名方式 默认值:null 例如:%sDao 生成 UserDao.xml .setServiceName("%sService")//service 命名方式 默认值:null 例如:%sBusiness 生成 UserBusiness .setServiceImplName("%sServiceImpl")//service impl 命名方式 默认值:null 例如:%sBusinessImpl 生成 UserBusinessImpl .setControllerName("%sController")//controller 命名方式 默认值:null 例如:%sAction 生成 UserAction .setFileOverride(false); // 数据源配置 DataSourceConfig dsc = new DataSourceConfig(); dsc.setUrl("jdbc:mysql://localhost:3306/ant?useUnicode=true&useSSL=false&characterEncoding=utf8"); // dsc.setSchemaName("public"); dsc.setDriverName("com.mysql.jdbc.Driver"); dsc.setUsername("root"); dsc.setPassword("密码"); //策略配置 StrategyConfig stConfig = new StrategyConfig(); stConfig.setCapitalMode(true) // 全局大写命名 // .setDbColumnUnderline(true) //表名 字段名 是否使用下滑线命名 .setNaming(NamingStrategy.underline_to_camel) // 数据库表映射到实体的命名策略 .setInclude(scanner("表名,多个英文逗号分割").split(",")) //生成的表 .setTablePrefix(scanner("表名前缀 如tbl_table 输入tbl")); // 表前缀 // 包配置 PackageConfig pkConfig = new PackageConfig(); pkConfig.setParent("com.atguigu.mp")//父包名 .setController("controller") .setEntity("beans") .setService("service") .setMapper("mapper") .setXml("mapper"); //com.atguigu.mp 下单独建立包: scanner("模块名") 放入 // PackageConfig pc = new PackageConfig(); // pc.setModuleName(scanner("模块名")); // pc.setParent("com.baomidou.ant"); // mpg.setPackageInfo(pc); //5.整合配置 AutoGenerator ag = new AutoGenerator().setGlobalConfig(gc) .setDataSource(dsc) .setStrategy(stConfig) .setPackageInfo(pkConfig); ag.execute(); } }

官方文档

你可能感兴趣的:(java,mybatis,generator)