自动生成Mapper代码
public class BeanMapperTest {
@Test
public void build() throws Exception {
Class clazz = RiskAccess.class;//把 RiskAccess替换成自己对应的model即可
System.out.println("public final static RowMapper<#ClassName> #ClassName_MAPPER = (rs, rowNum) -> {".replace("#ClassName", clazz.getSimpleName()));
System.out.println("#ClassName dto = new #ClassName();".replace("#ClassName", clazz.getSimpleName()));
for (java.lang.reflect.Method method : clazz.getMethods()) {
String methodName = method.getName();
String fieldName = methodName.replace("set", "");
if (methodName.contains("set")) {
Class paramType = method.getParameters()[0].getType();
System.out.println("dto.#MethodName(rs.get#ParamType(\"#FieldName\"));"
.replace("#MethodName", methodName)
.replace("#ParamType", paramType.getSimpleName())
.replace("#FieldName", fieldName));
}
}
System.out.println("return dto;");
System.out.println("};");
}
}
注意:如果表的字段名称有下划线,而对应POJO的字段没有下划线,则需要手动加上下划线,并且mapper只支持getInt()方法 ,而不支持getInteger()方法
自动生成Mapper代码的更多相关文章
- mybatis自动生成mapper,dao映射文件
利用Mybatis-Generator来帮我们自动生成mapper.xml文件,dao文件,model文件. 1.所需文件 关于Mybatis-Generator的下载可以到这个地址:https:// ...
- 使用mybatis-generator插件结合tk.mybatis自动生成mapper二三事
本篇文章将介绍使用spring boot框架,引入mybatis-generator插件,结合tk.mybatis自动生成Mapper和Entity的一整套流程,其中包括最重要的踩坑与填坑. ...
- 使用mybatis-generator插件结合tk.mybatis自动生成mapper
本篇文章将介绍使用spring boot框架,引入mybatis-generator插件,结合tk.mybatis自动生成Mapper和Entity的一整套流程,其中包括最重要的踩坑与填坑. ...
- [Dynamic Language] 用Sphinx自动生成python代码注释文档
用Sphinx自动生成python代码注释文档 pip install -U sphinx 安装好了之后,对Python代码的文档,一般使用sphinx-apidoc来自动生成:查看帮助mac-abe ...
- wsdl自动生成Java代码,根据wsdl生成Java代码
wsdl自动生成Java代码,根据wsdl生成Java代码 >>>>>>>>>>>>>>>>>&g ...
- 使用xorm工具,根据数据库自动生成 go 代码
使用xorm工具,根据数据库自动生成 go 代码 引入 使用 golang 操作数据库的同学都会遇到一个问题 -- 根据数据表结构创建对应的 struct 模型.因为 golang 的使用首字母控制可 ...
- mybatis自动生成java代码
SSM框架没有DB+Record模式,写起来特别费劲,只能用下面的方法勉强凑合. 上图中,*.jar为下载的,src为新建的空白目录,.xml配置如下. <?xml version=" ...
- 使用mybatis-generator工具自动生成mybatis代码
使用mybatis-generator工具自动生成mybatis代码 步骤如下: 1.引入maven 依赖,在项目pom.xml文件中添加 <plugin> <groupId> ...
- Mybatis-generator插件,用于自动生成Mapper和POJO
后台环境为springboot+mybatis. 步骤一:添加mybatis环境 <dependency> <groupId>mysql</groupId> < ...
随机推荐
- Asp.Net 无刷新文件上传并显示进度条的实现方法及思路
相信通过Asp.Net的服务器控件上传文件在简单不过了,通过AjaxToolkit控件实现上传进度也不是什么难事,为什么还要自己辛辛苦苦来 实现呢?我并不否认”拿来主义“,只是我个人更喜欢凡是求个所以 ...
- Editor编辑器的一些用法
共有两个脚本,一个是有关Inspector面板的,一个是window的 using UnityEngine; using System.Collections; using UnityEditor; ...
- Unity3D学习笔记——UIScrollBar和UIScrollView使用
UIScrollBar和UIScrollView结合使用效果图如下: 一:使用步骤 1.创建一个UIScrollView 2.然后创建一个UIScrollBar 3.打开UIScrollView ...
- UICollectionView sectionHeader and sectionFooter悬浮
UICollectionViewFlowLayout *yLayout = [[UICollectionViewFlowLayout alloc] init]; yLayout.sectionHead ...
- MySQL的having子句
1.定义:having子句对分组的结果集进行进一步的筛选 2.语法:select 字段列表 from 表名称 [where 子句][gruop by 子句] [having 子句]; 3.举例:查询出 ...
- 字符设备驱动程序--LED驱动
编写驱动程序需要编写那些代码: 1.硬件相关的驱动程序 2.Makefile的编译程序 3.还需要编写一个相关的测试程序 比如说:一个摄像头驱动程序 1.驱动程序的编写,需要编写一些硬件相关的操作,编 ...
- QThread与多线程(比较清楚)
QThread类为我们提供了一种平台无关的管理线程的方式.一个QThread对象管理应用程序中的一个线程,该线程从run()函数开始执行.并且,默认情况下,我们可以在run()函数中通过调用QThre ...
- Qt里的原子操作QAtomicInteger
所谓原子操作,即一系列复杂的操作能一气呵成,中间不被其他的操作打断.这在多线程程序中尤其常见,但要实现这种功能,既要考虑程序的良好设计,又要关心特定平台的体系结构和相关编译器对原子特性的支持程度.所以 ...
- MySQL中Cardinality值的介绍
1) 什么是Cardinality 不是所有的查询条件出现的列都需要添加索引.对于什么时候添加B+树索引.一般的经验是,在访问表中很少一部分时使用B+树索引才有意义.对于性别字段.地区 ...
- java基础—Hashtable,HashMap,TreeMap的差别
Hashtable : 此类实现一个哈希表,该哈希表将键映射到对应的值.不论什么非null 对象都能够作键值,是线程不同步的 HashMap : 基于哈希表的Map接口的实现.此实现提供全部可选的映 ...