mybatis-generator-gui根据需求改动示例
JavaType解析类
改的都是自己觉得需要改的部分
在生成的实体类中,数据库tinyint类型默认会生成Byte,使用时略有不便。于是将其改成Integer。
- 自定义一个JavaType解析的类
package com.zzg.mybatis.generator.plugins;
public class MyJavaTypeResolverImpl extends JavaTypeResolverDefaultImpl {
@Override
protected FullyQualifiedJavaType overrideDefaultType(IntrospectedColumn column, FullyQualifiedJavaType defaultType) {
FullyQualifiedJavaType answer = defaultType;
switch (column.getJdbcType()) {
case Types.TINYINT:
answer = new FullyQualifiedJavaType(Integer.class.getName());
break;
default:
break;
}
return answer;
}
}- 在加载配置的过程中进行加载即可(MybatisGeneratorBridge:210)
//for JSR310
if (generatorConfig.isJsr310Support()) {
JavaTypeResolverConfiguration javaTypeResolverConfiguration = new JavaTypeResolverConfiguration();
javaTypeResolverConfiguration.setConfigurationType("com.zzg.mybatis.generator.plugins.JavaTypeResolverJsr310Impl");
context.setJavaTypeResolverConfiguration(javaTypeResolverConfiguration);
} else {
// 《TINYINT的JavaType改为Integer》
JavaTypeResolverConfiguration myJavaTypeResolverConfiguration = new JavaTypeResolverConfiguration();
myJavaTypeResolverConfiguration.setConfigurationType("com.zzg.mybatis.generator.plugins.MyJavaTypeResolverImpl");
context.setJavaTypeResolverConfiguration(myJavaTypeResolverConfiguration);
}去掉不必要的默认勾选
- 找到MainUI.fxml;
找到对应的checkbox,把selected修改为false即可。

生成lombok常用注解
- 自定义lombok插件
package com.zzg.mybatis.generator.plugins;
public class LombokPlugin extends PluginAdapter {
public LombokPlugin() {
}
@Override
public boolean validate(List<String> list) {
return true;
}
@Override
public boolean modelBaseRecordClassGenerated(TopLevelClass topLevelClass, IntrospectedTable introspectedTable) {
topLevelClass.addImportedType("lombok.Data");
topLevelClass.addAnnotation("@Data");
topLevelClass.addImportedType("lombok.ToString");
topLevelClass.addAnnotation("@ToString");
topLevelClass.addImportedType("lombok.Builder");
topLevelClass.addAnnotation("@Builder");
topLevelClass.addImportedType("lombok.NoArgsConstructor");
topLevelClass.addAnnotation("@NoArgsConstructor");
topLevelClass.addImportedType("lombok.AllArgsConstructor");
topLevelClass.addAnnotation("@AllArgsConstructor");
topLevelClass.addJavaDocLine("/**");
topLevelClass.addJavaDocLine("* @author 我");
topLevelClass.addJavaDocLine("* @date " + this.date2Str(new Date()));
topLevelClass.addJavaDocLine("*/");
return true;
}
@Override
public boolean clientGenerated(Interface interfaze, TopLevelClass topLevelClass, IntrospectedTable introspectedTable) {
interfaze.addJavaDocLine("/**");
interfaze.addJavaDocLine("* @author 我");
interfaze.addJavaDocLine("* @date " + this.date2Str(new Date()));
interfaze.addJavaDocLine("*/");
return true;
}
@Override
public boolean modelSetterMethodGenerated(Method method, TopLevelClass topLevelClass, IntrospectedColumn introspectedColumn, IntrospectedTable introspectedTable, ModelClassType modelClassType) {
return false;
}
@Override
public boolean modelGetterMethodGenerated(Method method, TopLevelClass topLevelClass, IntrospectedColumn introspectedColumn, IntrospectedTable introspectedTable, ModelClassType modelClassType) {
return false;
}
private String date2Str(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
return sdf.format(date);
}
}在加载配置的过程中进行加载即可(加到MybatisGeneratorBridge:182下面)

生成的DAO层类改为默认Mapper结尾
找到MainUIController:212行,把“DAO”改为“Mapper”即可。
以上就是mybatis-generator-gui根据需求改动示例的详细内容,更多关于mybatis-generator-gui改动的资料请关注脚本之家其它相关文章!
相关文章
Java SpringMVC实现PC端网页微信扫码支付(完整版)
这篇文章主要介绍了Java SpringMVC实现PC端网页微信扫码支付(完整版)的相关资料,非常不错具有一定的参考借鉴价值,需要的朋友可以参考下2016-11-11
Mybatis Generator Plugin悲观锁实现示例
本文将从悲观锁为例,让你快速了解如何实现Mybatis Generator Plugin。文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2021-09-09
springboot 如何通过SpringTemplateEngine渲染html
通过Spring的Thymeleaf模板引擎可以实现将模板渲染为HTML字符串,而不是直接输出到浏览器,这样可以对渲染后的字符串进行其他操作,如保存到文件或进一步处理,感兴趣的朋友跟随小编一起看看吧2024-10-10


最新评论