mysql逆向工程封装_Mybatis Plus插件三种方式的逆向工程的使用

一、逆向工程简介

在Java开发中,持久层最常用的框架就是mybatis,该框架需要编写sql语句,mybatis官方提供逆向工程,可以把数据表自动生成执行所需要的基础代码,例如:mapper接口,sql映射文件,pojo实体类等,避免基础代码维护的繁杂过程。

2020110211032245.png

在实际的使用中,常用的逆向工程方式如上,mybatis框架,mybatis-plus框架,插件方式。

二、Mybatis方式

1、基础描述

基于xml配置的方式,生成mybatis基础代码,包括mapper接口,Mapper映射文件,pojo实体类,PojoExample条件工具类。

2、配置文件

注意这里的targetProject需要配置自定义路径位置。

/p>

PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"

"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">

connectionURL="jdbc:mysql://localhost:3306/defined-log?tinyInt1isBit=false"

userId="root" password="123456">

targetProject="存放路径">

targetProject="存放路径">

targetProject="存放路径">

3、启动类

读取配置文件,并执行。

public class GeneratorMybatis {

public void generator() throws Exception {

List warnings = new ArrayList();

boolean overwrite = true;

File configFile = Resources.getResourceAsFile("generatorConfig.xml");

ConfigurationParser cp = new ConfigurationParser(warnings);

Configuration config = cp.parseConfiguration(configFile);

DefaultShellCallback callback = new DefaultShellCallback(overwrite);

MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config,callback, warnings);

myBatisGenerator.generate(null);

}

public static void main(String[] args) throws Exception {

try {

GeneratorMybatis generatorMybatis = new GeneratorMybatis();

generatorMybatis.generator();

} catch (Exception e) {

e.printStackTrace();

}

}

}

三、MybatisPlus方式

1、基础描述

MybatisPlus相比Mybatis提供更多增强的能力,单表操作基本都封装好了,所以生成的mapper映射文件简洁很多,需要注意ServiceImpl关键类和BaseMapper接口。

2、核心启动类

这里的配置可以基于很多自定义的策略,案例生成的代码已经传到仓库,可以自行下载查看。

public class GeneratorMybatisPlus {

public static void main(String[] args) {

// 代码生成器

AutoGenerator autoGenerator = new AutoGenerator();

// 全局配置

GlobalConfig globalConfig = new GlobalConfig();

//生成文件的输出目录

String path="存放路径";

globalConfig.setOutputDir(path);

// Author设置作者

globalConfig.setAuthor("mybatis-plus");

// 文件覆盖

globalConfig.setFileOverride(true);

// 生成后打开文件

globalConfig.setOpen(false);

// 自定义文件名风格,%s自动填充表实体属性

globalConfig.setMapperName("%sMapper");

globalConfig.setXmlName("%sMapper");

globalConfig.setServiceName("%sDao");

globalConfig.setServiceImplName("%sDaoImpl");

globalConfig.setEntityName("%s");

globalConfig.setControllerName("%sController");

autoGenerator.setGlobalConfig(globalConfig);

// 数据源配置

DataSourceConfig dataSourceConfig = new DataSourceConfig();

dataSourceConfig.setDbType(DbType.MYSQL);

dataSourceConfig.setTypeConvert(new MySqlTypeConvert());

dataSourceConfig.setUrl("jdbc:mysql://localhost:3306/defined-log?tinyInt1isBit=false");

dataSourceConfig.setDriverName("com.mysql.jdbc.Driver");

dataSourceConfig.setUsername("root");

dataSourceConfig.setPassword("123456");

autoGenerator.setDataSource(dataSourceConfig);

// 包名配置

PackageConfig packageConfig = new PackageConfig();

// 父包和子包名分开处理

packageConfig.setParent("com.generator.mybatis.plus");

packageConfig.setController("web");

packageConfig.setEntity("pojo");

packageConfig.setMapper("mapper");

packageConfig.setService("dao");

packageConfig.setServiceImpl("dao.impl");

autoGenerator.setPackageInfo(packageConfig);

// 生成策略配置

StrategyConfig strategy = new StrategyConfig();

//设置命名格式

strategy.setNaming(NamingStrategy.underline_to_camel);

strategy.setColumnNaming(NamingStrategy.underline_to_camel);

// 实体是否为lombok模型,默认 false

strategy.setEntityLombokModel(true);

//生成 @RestController 控制器

strategy.setRestControllerStyle(true);

// 驼峰转连字符

strategy.setControllerMappingHyphenStyle(true);

//表和前缀处理

strategy.setInclude("dt_defined_log".split(","));

String[] tablePre = new String[]{"dt_"};

strategy.setTablePrefix(tablePre);

autoGenerator.setStrategy(strategy);

// 执行,以上相关参数可以基于动态输入获取

autoGenerator.execute();

}

}

该方式是当前mybatis框架最流行的开发方式,代码会简洁很多。

四、插件工具

1、配置数据库

这里选择MySQL数据源,后续根据提示需要下载驱动配置。

2020110211032246.png

2、连接配置

2020110211032247.png

Url地址,账号,密码,获取连接。

3、插件使用

这里选择的是安装EasyCode插件。

2020110211032248.png

根据配置,生成逆向工程文件,整体思路和上述两种方式一致。

五、源代码地址

到此这篇关于Mybatis Plus插件三种方式的逆向工程的使用的文章就介绍到这了,更多相关Mybatis Plus 逆向工程内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值