1.修复mapper接口load方法,但是xml中方法不匹配问题 2.移除mapper中CRUD时的@param 注解,会影响xml的解析(感谢@caojiantao的反馈)。3.优化MyBatis的xml文件对Oracle的支持。(感谢@wylove1992的反馈) 4.新增对boolean的处理(感谢@violinxsc的反馈)以及优化tinyint类型生成boolean类型问题(感谢@hahaYhui的反馈)

This commit is contained in:
MOSHOW.K.ZHENG
2019-09-10 00:06:25 +08:00
parent 26a45a5915
commit 3570a71ab5
4 changed files with 151 additions and 149 deletions

View File

@@ -16,6 +16,7 @@ SpringBootCodeGenerator
<tr><td>CSDN博客</td> <td>http://blog.csdn.net/moshowgame</td></tr> <tr><td>CSDN博客</td> <td>http://blog.csdn.net/moshowgame</td></tr>
<tr><td></td> <td></td></tr> <tr><td></td> <td></td></tr>
<tr><td>更新日期</td> <td>更新内容</td></tr> <tr><td>更新日期</td> <td>更新内容</td></tr>
<tr><td>20190910<td>1.修复mapper接口load方法但是xml中方法不匹配问题 2.移除mapper中CRUD时的@param 注解会影响xml的解析感谢@caojiantao的反馈。3.优化MyBatis的xml文件对Oracle的支持。感谢@wylove1992的反馈 4.新增对boolean的处理感谢@violinxsc的反馈以及优化tinyint类型生成boolean类型问题感谢@hahaYhui的反馈 </td></tr>
<tr><td>20190909<td>添加是否下划线转换为驼峰的选择(感谢@youngking28 的pull request</td></tr> <tr><td>20190909<td>添加是否下划线转换为驼峰的选择(感谢@youngking28 的pull request</td></tr>
<tr><td>20190518<td>1.优化注释 2.修改 mybatis模板中 controller注解 3.修改 mybatis模板中 dao文件使用为 mapper文件 4.修改 mybatis模板中 service实现类中的一个 bug 5.修改 index.ftl文件中 mybatis模板的 dao -> mapper感谢@unqin的pull request</td></tr> <tr><td>20190518<td>1.优化注释 2.修改 mybatis模板中 controller注解 3.修改 mybatis模板中 dao文件使用为 mapper文件 4.修改 mybatis模板中 service实现类中的一个 bug 5.修改 index.ftl文件中 mybatis模板的 dao -> mapper感谢@unqin的pull request</td></tr>
<tr><td>20190511<td>优化mybatis模块的dao和xml模板修改dao接口注解为@Repository所有dao参数改为包装类删除update语句最后的UpdateTime = NOW()修改dao接口文件的方法注释使其更符合javaDoc的标准修改insert语句增加插入行主键的返回修改load的方法名为selectByPrimaryKey修改xml的update语句新增动态if判空修改xml的insert语句新增动态插入判空更符合mybatisGenerator标准感谢@Archer-Wen的贡献 )。</td></tr> <tr><td>20190511<td>优化mybatis模块的dao和xml模板修改dao接口注解为@Repository所有dao参数改为包装类删除update语句最后的UpdateTime = NOW()修改dao接口文件的方法注释使其更符合javaDoc的标准修改insert语句增加插入行主键的返回修改load的方法名为selectByPrimaryKey修改xml的update语句新增动态if判空修改xml的insert语句新增动态插入判空更符合mybatisGenerator标准感谢@Archer-Wen的贡献 )。</td></tr>

View File

@@ -176,7 +176,7 @@ public class TableParseUtil {
String fieldClass = Object.class.getSimpleName(); String fieldClass = Object.class.getSimpleName();
//2018-9-16 zhengk 补充char/clob/blob/json等类型如果类型未知默认为String //2018-9-16 zhengk 补充char/clob/blob/json等类型如果类型未知默认为String
//2018-11-22 lshz0088 处理字段类型的时候不严谨columnLine.contains(" int") 类似这种的,可在前后适当加一些空格之类的加以区分,否则当我的字段包含这些字符的时候,产生类型判断问题。 //2018-11-22 lshz0088 处理字段类型的时候不严谨columnLine.contains(" int") 类似这种的,可在前后适当加一些空格之类的加以区分,否则当我的字段包含这些字符的时候,产生类型判断问题。
if (columnLine.contains(" int") || columnLine.contains("tinyint") || columnLine.contains("smallint")) { if (columnLine.contains(" int") || columnLine.contains("smallint")) {
fieldClass = Integer.class.getSimpleName(); fieldClass = Integer.class.getSimpleName();
} else if (columnLine.contains("bigint")) { } else if (columnLine.contains("bigint")) {
fieldClass = Long.class.getSimpleName(); fieldClass = Long.class.getSimpleName();
@@ -221,7 +221,10 @@ public class TableParseUtil {
}else{ }else{
fieldClass = BigDecimal.class.getSimpleName(); fieldClass = BigDecimal.class.getSimpleName();
} }
}else { } else if (columnLine.contains("boolean")|| columnLine.contains("tinyint") ) {
//20190910 MOSHOW.K.ZHENG 新增对boolean的处理感谢@violinxsc的反馈以及修复tinyint类型字段无法生成boolean类型问题感谢@hahaYhui的反馈
fieldClass = Boolean.class.getSimpleName();
} else {
fieldClass = String.class.getSimpleName(); fieldClass = String.class.getSimpleName();
} }

View File

@@ -17,43 +17,41 @@ public interface ${classInfo.className}Mapper {
* @author ${authorName} * @author ${authorName}
* @date ${.now?string('yyyy/MM/dd')} * @date ${.now?string('yyyy/MM/dd')}
**/ **/
int insert(@Param("${classInfo.className?uncap_first}") ${classInfo.className} ${classInfo.className?uncap_first}); int insert(${classInfo.className} ${classInfo.className?uncap_first});
/** /**
* [刪除] * [刪除]
* @author ${authorName} * @author ${authorName}
* @date ${.now?string('yyyy/MM/dd')} * @date ${.now?string('yyyy/MM/dd')}
**/ **/
int delete(@Param("id") int id); int delete(int id);
/** /**
* [更新] * [更新]
* @author ${authorName} * @author ${authorName}
* @date ${.now?string('yyyy/MM/dd')} * @date ${.now?string('yyyy/MM/dd')}
**/ **/
int update(@Param("${classInfo.className?uncap_first}") ${classInfo.className} ${classInfo.className?uncap_first}); int update(${classInfo.className} ${classInfo.className?uncap_first});
/** /**
* [查詢] 根據主鍵 id 查詢 * [查詢] 根據主鍵 id 查詢
* @author ${authorName} * @author ${authorName}
* @date ${.now?string('yyyy/MM/dd')} * @date ${.now?string('yyyy/MM/dd')}
**/ **/
${classInfo.className} load(@Param("id") int id); ${classInfo.className} load(int id);
/** /**
* [查詢] 分頁查詢 * [查詢] 分頁查詢
* @author ${authorName} * @author ${authorName}
* @date ${.now?string('yyyy/MM/dd')} * @date ${.now?string('yyyy/MM/dd')}
**/ **/
List<${classInfo.className}> pageList(@Param("offset") int offset, List<${classInfo.className}> pageList(int offset,int pagesize);
@Param("pagesize") int pagesize);
/** /**
* [查詢] 分頁查詢 count * [查詢] 分頁查詢 count
* @author ${authorName} * @author ${authorName}
* @date ${.now?string('yyyy/MM/dd')} * @date ${.now?string('yyyy/MM/dd')}
**/ **/
int pageListCount(@Param("offset") int offset, int pageListCount(int offset,int pagesize);
@Param("pagesize") int pagesize);
} }

View File

@@ -14,7 +14,7 @@
<sql id="Base_Column_List"> <sql id="Base_Column_List">
<#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0> <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
<#list classInfo.fieldList as fieldItem > <#list classInfo.fieldList as fieldItem >
`${fieldItem.columnName}`<#if fieldItem_has_next>,</#if> ${fieldItem.columnName}<#if fieldItem_has_next>,</#if>
</#list> </#list>
</#if> </#if>
</sql> </sql>
@@ -24,9 +24,9 @@
<trim prefix="(" suffix=")" suffixOverrides=","> <trim prefix="(" suffix=")" suffixOverrides=",">
<#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0> <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
<#list classInfo.fieldList as fieldItem > <#list classInfo.fieldList as fieldItem >
<#if fieldItem.columnName != "id_" > <#if fieldItem.columnName != "id" >
${r"<if test ='null != "}${fieldItem.fieldName}${r"'>"} ${r"<if test ='null != "}${fieldItem.fieldName}${r"'>"}
`${fieldItem.columnName}`<#if fieldItem_has_next>,</#if> ${fieldItem.columnName}<#if fieldItem_has_next>,</#if>
${r"</if>"} ${r"</if>"}
</#if> </#if>
</#list> </#list>
@@ -35,7 +35,7 @@
<trim prefix="values (" suffix=")" suffixOverrides=","> <trim prefix="values (" suffix=")" suffixOverrides=",">
<#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0> <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
<#list classInfo.fieldList as fieldItem > <#list classInfo.fieldList as fieldItem >
<#if fieldItem.columnName != "id_" > <#if fieldItem.columnName != "id" >
<#--<#if fieldItem.columnName="addtime" || fieldItem.columnName="updatetime" > <#--<#if fieldItem.columnName="addtime" || fieldItem.columnName="updatetime" >
${r"<if test ='null != "}${fieldItem.fieldName}${r"'>"} ${r"<if test ='null != "}${fieldItem.fieldName}${r"'>"}
NOW()<#if fieldItem_has_next>,</#if> NOW()<#if fieldItem_has_next>,</#if>
@@ -53,26 +53,26 @@
<delete id="delete" > <delete id="delete" >
DELETE FROM ${classInfo.tableName} DELETE FROM ${classInfo.tableName}
WHERE `id_` = ${r"#{id}"} WHERE id = ${r"#{id}"}
</delete> </delete>
<update id="update" parameterType="${packageName}.entity.${classInfo.className}Entity"> <update id="update" parameterType="${packageName}.entity.${classInfo.className}Entity">
UPDATE ${classInfo.tableName} UPDATE ${classInfo.tableName}
<set> <set>
<#list classInfo.fieldList as fieldItem > <#list classInfo.fieldList as fieldItem >
<#if fieldItem.columnName != "id_" && fieldItem.columnName != "AddTime" && fieldItem.columnName != "UpdateTime" > <#if fieldItem.columnName != "id" && fieldItem.columnName != "AddTime" && fieldItem.columnName != "UpdateTime" >
${r"<if test ='null != "}${fieldItem.fieldName}${r"'>"}${fieldItem.columnName} = ${r"#{"}${fieldItem.fieldName}${r"}"}<#if fieldItem_has_next>,</#if>${r"</if>"} ${r"<if test ='null != "}${fieldItem.fieldName}${r"'>"}${fieldItem.columnName} = ${r"#{"}${fieldItem.fieldName}${r"}"}<#if fieldItem_has_next>,</#if>${r"</if>"}
</#if> </#if>
</#list> </#list>
</set> </set>
WHERE `id_` = ${r"#{"}id${r"}"} WHERE id = ${r"#{"}id${r"}"}
</update> </update>
<select id="selectByPrimaryKey" resultMap="BaseResultMap"> <select id="load" resultMap="BaseResultMap">
SELECT <include refid="Base_Column_List" /> SELECT <include refid="Base_Column_List" />
FROM ${classInfo.tableName} FROM ${classInfo.tableName}
WHERE `id_` = ${r"#{id}"} WHERE id = ${r"#{id}"}
</select> </select>
<select id="pageList" resultMap="BaseResultMap"> <select id="pageList" resultMap="BaseResultMap">