mybatis-generator-gui根據(jù)需求改動示例
JavaType解析類
改的都是自己覺得需要改的部分
在生成的實(shí)體類中,數(shù)據(jù)庫tinyint類型默認(rèn)會生成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; } }
- 在加載配置的過程中進(jìn)行加載即可(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); }
去掉不必要的默認(rèn)勾選
- 找到MainUI.fxml;
找到對應(yīng)的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); } }
在加載配置的過程中進(jìn)行加載即可(加到MybatisGeneratorBridge:182下面)
生成的DAO層類改為默認(rèn)Mapper結(jié)尾
找到MainUIController:212行,把“DAO”改為“Mapper”即可。
以上就是mybatis-generator-gui根據(jù)需求改動示例的詳細(xì)內(nèi)容,更多關(guān)于mybatis-generator-gui改動的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Java常用 Date 時間格式化、Calender日歷、正則表達(dá)式的用法小結(jié)
SimpleDateFormat?是Java中用于格式化和解析日期的類,它允許你將日期對象轉(zhuǎn)換為特定格式的字符串,或者將特定格式的字符串轉(zhuǎn)換為日期對象,這篇文章主要介紹了Java常用 Date 時間格式化、Calender日歷、正則表達(dá)式的用法,需要的朋友可以參考下2024-12-12Mybatis-Plus使用ID_WORKER生成主鍵id重復(fù)的解決方法
本文主要介紹了Mybatis-Plus使用ID_WORKER生成主鍵id重復(fù)的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07JSON.toJSONString()空字段不忽略修改的問題
這篇文章主要介紹了JSON.toJSONString()空字段不忽略修改的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02springboot框架中如何整合mybatis框架思路詳解
這篇文章主要介紹了springboot框架中如何整合mybatis框架,本文通過示例圖文相結(jié)合給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12詳解jenkins自動部署springboot應(yīng)用的方法
這篇文章主要介紹了詳解jenkins自動部署springboot應(yīng)用的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08Struts 2中實(shí)現(xiàn)Ajax的三種方式
這篇文章主要介紹了Struts 2中實(shí)現(xiàn)Ajax的三種方式,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-05-05Java中的取余與取模運(yùn)算概念、區(qū)別代碼實(shí)踐
這篇文章主要介紹了Java中的取余與取模運(yùn)算概念、區(qū)別代碼實(shí)踐,需要的朋友可以參考下2007-02-02