国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Mybatis Plus插件三種方式的逆向工程的使用

瀏覽:56日期:2023-10-21 18:22:13

本文源碼:GitHub·點(diǎn)這里 || GitEE·點(diǎn)這里

一、逆向工程簡(jiǎn)介

在Java開(kāi)發(fā)中,持久層最常用的框架就是mybatis,該框架需要編寫(xiě)sql語(yǔ)句,mybatis官方提供逆向工程,可以把數(shù)據(jù)表自動(dòng)生成執(zhí)行所需要的基礎(chǔ)代碼,例如:mapper接口,sql映射文件,pojo實(shí)體類等,避免基礎(chǔ)代碼維護(hù)的繁雜過(guò)程。

Mybatis Plus插件三種方式的逆向工程的使用

在實(shí)際的使用中,常用的逆向工程方式如上,mybatis框架,mybatis-plus框架,插件方式。

二、Mybatis方式

1、基礎(chǔ)描述

基于xml配置的方式,生成mybatis基礎(chǔ)代碼,包括mapper接口,Mapper映射文件,pojo實(shí)體類,PojoExample條件工具類。

2、配置文件

注意這里的targetProject需要配置自定義路徑位置。

<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE generatorConfigurationPUBLIC '-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN''http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd'><generatorConfiguration><context targetRuntime='MyBatis3'><commentGenerator><!-- 是否去除自動(dòng)生成的注釋 true:是 : false:否 --><property name='suppressAllComments' value='true'/><property name='suppressDate' value='false'/><!-- 是否添加數(shù)據(jù)表中字段的注釋 true:是 : false:否 --><property name='addRemarkComments' value='true'/></commentGenerator><!--數(shù)據(jù)庫(kù)的信息:驅(qū)動(dòng)類、連接地址、用戶名、密碼 --><jdbcConnection driverClass='com.mysql.jdbc.Driver'connectionURL='jdbc:mysql://localhost:3306/defined-log?tinyInt1isBit=false'userId='root' password='123456'></jdbcConnection><!--默認(rèn)false,把JDBC decimal 和 numeric 類型解析為 Integer 設(shè)置true時(shí)把JDBC decimal 和 numeric 類型解析為BigDecimal--><javaTypeResolver><property name='forceBigDecimals' value='false' /></javaTypeResolver><!-- 生成POJO類的位置 --><javaModelGenerator targetPackage='com.generator.mybatis.pojo'targetProject='存放路徑'><property name='enableSubPackages' value='true' /><property name='trimStrings' value='true' /></javaModelGenerator><!-- 生成Mapper映射文件的位置 --><sqlMapGenerator targetPackage='com.generator.mybatis.xml'targetProject='存放路徑'><property name='enableSubPackages' value='true' /></sqlMapGenerator><!-- 生成Mapper接口的位置 --><javaClientGenerator type='XMLMAPPER' targetPackage='com.generator.mybatis.mapper'targetProject='存放路徑'><property name='enableSubPackages' value='true' /></javaClientGenerator><!-- 指定數(shù)據(jù)庫(kù)表 --><table schema='' tableName='dt_defined_log' domainObjectName='DefinedLog'/></context></generatorConfiguration>

3、啟動(dòng)類

讀取配置文件,并執(zhí)行。

public class GeneratorMybatis { public void generator() throws Exception { List<String> warnings = new ArrayList<String>(); 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、基礎(chǔ)描述

MybatisPlus相比Mybatis提供更多增強(qiáng)的能力,單表操作基本都封裝好了,所以生成的mapper映射文件簡(jiǎn)潔很多,需要注意ServiceImpl關(guān)鍵類和BaseMapper接口。

2、核心啟動(dòng)類

這里的配置可以基于很多自定義的策略,案例生成的代碼已經(jīng)傳到倉(cāng)庫(kù),可以自行下載查看。

public class GeneratorMybatisPlus { public static void main(String[] args) { // 代碼生成器 AutoGenerator autoGenerator = new AutoGenerator(); // 全局配置 GlobalConfig globalConfig = new GlobalConfig(); //生成文件的輸出目錄 String path='存放路徑'; globalConfig.setOutputDir(path); // Author設(shè)置作者 globalConfig.setAuthor('mybatis-plus'); // 文件覆蓋 globalConfig.setFileOverride(true); // 生成后打開(kāi)文件 globalConfig.setOpen(false); // 自定義文件名風(fēng)格,%s自動(dòng)填充表實(shí)體屬性 globalConfig.setMapperName('%sMapper'); globalConfig.setXmlName('%sMapper'); globalConfig.setServiceName('%sDao'); globalConfig.setServiceImplName('%sDaoImpl'); globalConfig.setEntityName('%s'); globalConfig.setControllerName('%sController'); autoGenerator.setGlobalConfig(globalConfig); // 數(shù)據(jù)源配置 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(); // 父包和子包名分開(kāi)處理 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(); //設(shè)置命名格式 strategy.setNaming(NamingStrategy.underline_to_camel); strategy.setColumnNaming(NamingStrategy.underline_to_camel); // 實(shí)體是否為lombok模型,默認(rèn) false strategy.setEntityLombokModel(true); //生成 @RestController 控制器 strategy.setRestControllerStyle(true); // 駝峰轉(zhuǎn)連字符 strategy.setControllerMappingHyphenStyle(true); //表和前綴處理 strategy.setInclude('dt_defined_log'.split(',')); String[] tablePre = new String[]{'dt_'}; strategy.setTablePrefix(tablePre); autoGenerator.setStrategy(strategy); // 執(zhí)行,以上相關(guān)參數(shù)可以基于動(dòng)態(tài)輸入獲取 autoGenerator.execute(); }}

該方式是當(dāng)前mybatis框架最流行的開(kāi)發(fā)方式,代碼會(huì)簡(jiǎn)潔很多。

四、插件工具

1、配置數(shù)據(jù)庫(kù)

這里選擇MySQL數(shù)據(jù)源,后續(xù)根據(jù)提示需要下載驅(qū)動(dòng)配置。

Mybatis Plus插件三種方式的逆向工程的使用

2、連接配置

Mybatis Plus插件三種方式的逆向工程的使用

Url地址,賬號(hào),密碼,獲取連接。

3、插件使用

這里選擇的是安裝EasyCode插件。

Mybatis Plus插件三種方式的逆向工程的使用

根據(jù)配置,生成逆向工程文件,整體思路和上述兩種方式一致。

五、源代碼地址

GitHub·地址https://github.com/cicadasmile/data-manage-parent

GitEE·地址https://gitee.com/cicadasmile/data-manage-parent

到此這篇關(guān)于Mybatis Plus插件三種方式的逆向工程的使用的文章就介紹到這了,更多相關(guān)Mybatis Plus 逆向工程內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

相關(guān)文章:
主站蜘蛛池模板: 国产精品免费视频一区 | 亚洲欧洲日产国产 最新 | 久久99国产精品免费观看 | 国产成人精品高清在线观看99 | 亚洲成人高清 | 经典三级在线视频 | 亚洲高清国产一区二区三区 | 成年人免费在线观看网站 | 手机在线色| 国产午夜毛片v一区二区三区 | 国产精品18久久久久网站 | 成人免费夜片在线观看 | 国产永久免费视频m3u8 | 久99频这里只精品23热 视频 | 日韩一区二区三区在线视频 | chinese耄耋70老太性 | 91视频啪啪| 玖玖精品视频在线观看 | 亚洲一区在线观看视频 | 亚洲国产区 | 亚洲免费观看在线视频 | 国产成人精品午夜免费 | 国产区亚洲区 | 亚洲国产精品线播放 | 欧美视频精品 | 国产成人一区二区三区在线视频 | jul-179在线中文字幕 | 国产欧美日韩在线 | 中文精品视频一区二区在线观看 | 日本国产最新一区二区三区 | 亚州毛片| 国产视频二区在线观看 | 加勒比色久综合在线 | 国产激情自拍 | 日韩3级| 国产成人a大片大片在线播放 | 久久精品亚洲 | 成人中文字幕在线观看 | 粉嫩jk制服美女啪啪 | 99久久国产综合精品国 | 一级做a爱片特黄在线观看免费看 |