修改myBatis Generator原始碼
找到org.mybatis.generator.api.IntrospectedTable.java 類;
一. 修改*mapping.xml配置檔案中的各類id名稱
找到 calculateXmlAttributes() 方法,修改對應的id名稱為你要定義的名稱即可.
二. 修改DAO類名
找到 calculateJavaClientAttributes() 方法,對方法中所有fullyQualifiedTable.getDomainObjectName()返回的結果進行處理即可修改DAO字尾名找到 setMyBatis3JavaMapperType這一句,修改上面sb.append("DAO")中的DAO為你想要的字尾名即可
三. 修改Bean類名
找到 calculateModelAttributes() 方法,對方法中所有fullyQualifiedTable.getDomainObjectName()返回的結果進行處理即可
四. 修改*Mapper.xml中namespace對應的實體類的名稱
找到 calculateMyBatis3FallbackSqlMapNamespace()方法,對方法中所有fullyQualifiedTable.getDomainObjectName()返回的結果進行處理即可
五. 修改*Mapping.xml檔案的名稱
找到 calculateMyBatis3XmlMapperFileName() 方法,對方法中所有fullyQualifiedTable.getDomainObjectName()返回的結果進行處理即可
六. 去掉*Mapping檔案中的resultMap節點
找到 org.mybatis.generator.codegen.mybatis3.xmlmapper.elements.ResultMapWithoutBLOBsElementGenerator.java 類,將方法addElements()中的所有程式碼進行遮蔽org.mybatis.generator.codegen.mybatis3.xmlmapper.elements
七. 修改*Mapping檔案中的resultMap節點屬性為resultType
找到org.mybatis.generator.codegen.mybatis3.xmlmapper.elements.SelectByPrimaryKeyElementGenerator類,修改方法addElements()中的所有resultType為resultMap
八. 修改java類檔案中的import引用
找到org.mybatis.generator.api.dom.OutputUtilities類,修改方法calculateImports()
九. 修改dao繼承指定類
找到org.mybatis.generator.api.dom.java.Interface類,修改方法getFormattedContent(),在sb.append(" {")之前新增你要繼承的類注:以上全部,如果返回的是java.util.Map,則這裡所有的修改都是以捨棄實體類為前提的
十. 指定Mapping檔案中的生成哪些sql
找到org.mybatis.generator.codegen.mybatis3.xmlmapper.XMLMapperGenerator.java類中的getSqlMapElement()方法,遮蔽不想生成的sql即可,如:addUpdateByPrimaryKeySelectiveElement(answer); //updateByPrimaryKeySelective
十一. 指定Dao檔案中的生成哪些method
找到org.mybatis.generator.codegen.mybatis3.javamapper.JavaMapperGenerator.java類中的getCompilationUnits()方法,遮蔽不想生成的sql即可,如:addUpdateByPrimaryKeyWithoutBLOBsMethod(interfaze); //updateByPrimaryKey
十二. 修改Dao中method的引數預設名稱
全域性搜尋method.addParameter(new Parameter(parameterType, "record")); 字串,批次替換"record"為自己想要的定義的名稱即可,如替換成和實體類檔名相同但首字母小寫:method.addParameter(new Parameter(parameterType,StringUtil.toLowerCaseFirstOne(parameterType.getShortName())));//StringUtil.toLowerCaseFirstOne(String str) 是把第一個字元轉換成小寫,然後引用相關的包即可
十三. Dao中新增method
org.mybatis.generator.codegen.mybatis3.javamapper.elements 包下面隨便找一個檔案,編寫你要新增的方法(可以直接參考addInterfaceElements方法中的內容),然後從addInterfaceElements(Interface interfaze) 方法中進行呼叫即可
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2819/viewspace-2817558/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mybatis-generator-修改原始碼生成自己想要的程式碼MyBatis原始碼
- mybatis generatorMyBatis
- 從程式碼生成說起,帶你深入理解 mybatis generator 原始碼MyBatis原始碼
- 使用Java程式碼配置MyBatis GeneratorJavaMyBatis
- MyBatis Generator自動生成程式碼MyBatis
- Mybatis-GeneratorMyBatis
- MyBatis generator配置MyBatis
- MyBatis Generator配置使用MyBatis
- 利用mybatis-generator自動生成程式碼MyBatis
- mybatis的外掛:mybatis-generator(MBG)MyBatis
- 由表生成程式碼:mybatis-generator入門MyBatis
- mybatis-generator-程式碼自動生成器MyBatis
- MyBatis Generator 用法詳解MyBatis
- idea 中使用Mybatis Generator逆向工程生成程式碼IdeaMyBatis
- maven mybatis-generator 外掛自動生成程式碼MavenMyBatis
- MyBatis Generator 超詳細配置MyBatis
- MyBatis Generator配置及執行MyBatis
- MyBatis原始碼解析MyBatis原始碼
- Mybatis原始碼分析MyBatis原始碼
- ] Failed to execute goal org.mybatis.generator:mybatis-generator-maven-plugin Cannot instantiate object of typeAIGoMyBatisMavenPluginObject
- 精盡MyBatis原始碼分析 - MyBatis-Spring 原始碼分析MyBatis原始碼Spring
- 程式碼演示Mybatis-Generator 擴充套件自定義生成MyBatis套件
- 把Mybatis Generator生成的程式碼加上想要的註釋MyBatis
- MyBatis-Plus Generator自定義模板MyBatis
- MyBatis Generator嘗試與踩坑MyBatis
- eclipse安裝mybatis-generatorEclipseMyBatis
- 從Generator入手讀懂co模組原始碼原始碼
- MyBatis原始碼分析(一)MyBatis原始碼
- MyBatis原始碼分析(二)MyBatis原始碼
- mybatis plugin原始碼解析MyBatisPlugin原始碼
- Mybatis修改MyBatis
- MyBatis3教程 - MyBatis Interceptor原始碼分析MyBatisS3原始碼
- 【MyBatis原始碼解析】MyBatis一二級快取MyBatis原始碼快取
- Mybatis Generator Plugin悲觀鎖實現MyBatisPlugin
- 深入Mybatis原始碼——配置解析MyBatis原始碼
- Mybatis原始碼解析4——SqlSessionMyBatis原始碼SQLSession
- Mybatis日誌原始碼探究MyBatis原始碼
- Mybatis原始碼分析--待完成MyBatis原始碼