mybatis-plus-generator3.5.1的用法
最近使用mybatis-plus-generator3.5.1生成后端代码,发现用法和旧版本有很大不一样,折腾了很久才摸索出来,代码如下所示:
public class CodeGenerator {private String moudleName="house_resources";//模块名private String tableName="tb_house_resources";//表名@Testpublic void generate(){FastAutoGenerator.create("jdbc:mysql://localhost:3306/haoke?serverTimezone=Asia/Shanghai", "root", "123456").globalConfig(builder -> {builder.author("heyu") // 设置作者//.enableSwagger() // 开启 swagger 模式.fileOverride() // 覆盖已生成文件.outputDir(System.getProperty("user.dir")+"/src/main/java"); // 指定输出目录}).packageConfig(builder -> {builder.parent("cn.itcast.haoke.dubbo.server") // 设置父包名.moduleName(moudleName) // 设置父包模块名.pathInfo(Collections.singletonMap(OutputFile.mapperXml,System.getProperty("user.dir")+"/src/main/resources/mapper")); // 设置mapperXml生成路径}).strategyConfig(builder -> {builder.addInclude(tableName) // 设置需要生成的表名.addTablePrefix("tb_") // 设置过滤表前缀.entityBuilder().enableLombok().superClass("cn.itcast.haoke.dubbo.server.pojo.BasePojo").idType(IdType.AUTO).enableChainModel().controllerBuilder().enableRestStyle().enableHyphenStyle();}).templateConfig(builder -> {builder.mapperXml("/templates/mapper.xml");}).templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板.execute();}
}
上述配置使用了freemarker模板引擎,所以还需要额外引入freemarker的依赖
<dependency><groupId>org.freemarker</groupId><artifactId>freemarker</artifactId><version>2.3.31</version>
</dependency>
只有通过单元测试来运行这段代码才能在当前模块下生成项目文件。通过主函数来运行会将项目文件生成到根模块下。
然而单元测试又不能在控制台输入文字,因此将模块名和表名定义在属性里面以便于修改。
mybatis-plus-generator3.5.1的用法相关推荐
- mybatis的association以及collection的用法
在项目中,某些实体类之间肯定有关键关系,比如一对一,一对多等.mybatis 中就用association和collection. association: 一对一关联(has one) collec ...
- mysql resultmap_MySQL数据库:mybatis的resultType和resultMap基础用法
在MySQL数据库中,resultType和resultMap都是用于返回多行查询.二者不能一起用.区别在于后者能解决复杂查询时定的映射问题(比如有两个表相关联,此时就要用resultMap了),希望 ...
- MyBatis(2):MyBatis标签以及对应的属性用法讲解
通过上一章的讲解,大家应该对MyByatis的基本用法有了一定的了解.这一章主要是讲一下MyBatis的各种标签以及对应的属性,它们的用法以及用的时候应该注意一些什么!下面的讲解时结合当前主流框架(S ...
- MyBatis选择Choose和条件IF用法
choose用法 <choose><when test="showType == 1">IFNULL(k.fname,'未知') as pro_name,& ...
- Mybatis中的 ${} 和 #{}区别与用法
Mybatis 的Mapper.xml语句中parameterType向SQL语句传参有两种方式:#{}和${} 我们经常使用的是#{},一般解说是因为这种方式可以防止SQL注入,简单的说#{}这种方 ...
- Mybatis 一对多关联查询collection用法
使用resultMap, select 标签, resultMap的中的collection表示一对多,column对应select标签中的sql里的字段或者别名,当两个表字段名称有相同的情况下,可以 ...
- mybatis中prefix,suffix,prefixOverrides,suffixOverrides用法解释
<trim prefix="" suffix="" suffixOverrides="" prefixOverrides=" ...
- mybatis里的when和otherwise用法
在where条件语句中进行判断,当type == x1 时和type == x2时where中的判断条件不同 解决 <select id = "" resultMap = & ...
- Mybatis中foreach的三种用法
foreach一共有List,array,Map三种类型的使用场景. foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合. item表示集合中每一个元素进行迭代时的别名, i ...
- Mybatis中<trim>标签用法
trim标签的属性: prefix: 拼接sql需要加上的前缀. prefixOverrides:前缀需要覆盖消除的内容. suffix:拼接sql需要加上的后缀 suffixOverrides:后缀 ...
最新文章
- QIIME 2用户文档. 22Python命令行模式(2019.7)
- 在IIS(64位)上部署WCF服务访问Oracle数据库
- (chap6 Http首部) 响应首部字段 LocationProxy-AuthenticateRetry-After
- mysql半同步复制
- 超详细Ubuntu Linux安装配置 Tomcat
- [POI2015]CZA
- 第十六节: EF的CodeFirst模式通过Fluent API修改默认协定
- linux中的权限对于文件和目录的重要性
- Android对话框的高级设置《二》设置对话框按钮的透明度和对话框的在屏幕上的显示位置
- SecureCrt 利用公匙登录L机取消密码登录。
- 37. Element appendChild() 方法
- oracle聚合字符串,Oracle 聚合字符串
- 如何让Java文件在虚拟机中运行_深入理解JVM--Java程序如何在虚拟机中运行
- fastdfs返回的url_FastDFS上传文件Demospringboot实现
- [UESTC SC T1] 最大疯子树
- 华罗庚数学竞赛如何报名?
- jquery 实现考试倒计时
- MFC通讯录入门必看
- 蜂窝移动的架构 以及省电的方法
- Win10照片应用的小bug——自动模糊图片(有过渡色)