diff --git a/README.md b/README.md
index bcd620a..155d5db 100644
--- a/README.md
+++ b/README.md
@@ -16,6 +16,7 @@ SpringBootCodeGenerator
| CSDN博客 | http://blog.csdn.net/moshowgame |
| |
| 更新日期 | 更新内容 |
+| 20190910 | 1.修复mapper接口load方法,但是xml中方法不匹配问题 2.移除mapper中CRUD时的@param 注解,会影响xml的解析(感谢@caojiantao的反馈)。3.优化MyBatis的xml文件对Oracle的支持。(感谢@wylove1992的反馈) 4.新增对boolean的处理(感谢@violinxsc的反馈)以及优化tinyint类型生成boolean类型问题(感谢@hahaYhui的反馈) |
| 20190909 | 添加是否下划线转换为驼峰的选择(感谢@youngking28 的pull request)。 |
| 20190518 | 1.优化注释 2.修改 mybatis模板中 controller注解 3.修改 mybatis模板中 dao文件使用为 mapper文件 4.修改 mybatis模板中 service实现类中的一个 bug 5.修改 index.ftl文件中 mybatis模板的 dao -> mapper(感谢@unqin的pull request) |
| 20190511 | 优化mybatis模块的dao和xml模板,修改dao接口注解为@Repository,所有dao参数改为包装类,删除update语句最后的UpdateTime = NOW(),修改dao接口文件的方法注释使其更符合javaDoc的标准,修改insert语句增加插入行主键的返回,修改load的方法名为selectByPrimaryKey,修改xml的update语句新增动态if判空,修改xml的insert语句新增动态插入判空,更符合mybatisGenerator标准(感谢@Archer-Wen的贡献 )。 |
diff --git a/generator-web/src/main/java/com/softdev/system/generator/util/TableParseUtil.java b/generator-web/src/main/java/com/softdev/system/generator/util/TableParseUtil.java
index f2f2c5d..b796a70 100644
--- a/generator-web/src/main/java/com/softdev/system/generator/util/TableParseUtil.java
+++ b/generator-web/src/main/java/com/softdev/system/generator/util/TableParseUtil.java
@@ -176,7 +176,7 @@ public class TableParseUtil {
String fieldClass = Object.class.getSimpleName();
//2018-9-16 zhengk 补充char/clob/blob/json等类型,如果类型未知,默认为String
//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();
} else if (columnLine.contains("bigint")) {
fieldClass = Long.class.getSimpleName();
@@ -221,7 +221,10 @@ public class TableParseUtil {
}else{
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();
}
diff --git a/generator-web/src/main/resources/templates/code-generator/mybatis/mapper.ftl b/generator-web/src/main/resources/templates/code-generator/mybatis/mapper.ftl
index f2d0336..9e0d060 100644
--- a/generator-web/src/main/resources/templates/code-generator/mybatis/mapper.ftl
+++ b/generator-web/src/main/resources/templates/code-generator/mybatis/mapper.ftl
@@ -1,59 +1,57 @@
-import org.apache.ibatis.annotations.Param;
-import org.apache.ibatis.annotations.Mapper;
-import org.springframework.stereotype.Repository;
-import java.util.List;
-
-/**
-* ${classInfo.classComment}
-* @author ${authorName}
-* @date ${.now?string('yyyy/MM/dd')}
-*/
-@Mapper
-@Repository
-public interface ${classInfo.className}Mapper {
-
- /**
- * [新增]
- * @author ${authorName}
- * @date ${.now?string('yyyy/MM/dd')}
- **/
- int insert(@Param("${classInfo.className?uncap_first}") ${classInfo.className} ${classInfo.className?uncap_first});
-
- /**
- * [刪除]
- * @author ${authorName}
- * @date ${.now?string('yyyy/MM/dd')}
- **/
- int delete(@Param("id") int id);
-
- /**
- * [更新]
- * @author ${authorName}
- * @date ${.now?string('yyyy/MM/dd')}
- **/
- int update(@Param("${classInfo.className?uncap_first}") ${classInfo.className} ${classInfo.className?uncap_first});
-
- /**
- * [查詢] 根據主鍵 id 查詢
- * @author ${authorName}
- * @date ${.now?string('yyyy/MM/dd')}
- **/
- ${classInfo.className} load(@Param("id") int id);
-
- /**
- * [查詢] 分頁查詢
- * @author ${authorName}
- * @date ${.now?string('yyyy/MM/dd')}
- **/
- List<${classInfo.className}> pageList(@Param("offset") int offset,
- @Param("pagesize") int pagesize);
-
- /**
- * [查詢] 分頁查詢 count
- * @author ${authorName}
- * @date ${.now?string('yyyy/MM/dd')}
- **/
- int pageListCount(@Param("offset") int offset,
- @Param("pagesize") int pagesize);
-
-}
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+import java.util.List;
+
+/**
+* ${classInfo.classComment}
+* @author ${authorName}
+* @date ${.now?string('yyyy/MM/dd')}
+*/
+@Mapper
+@Repository
+public interface ${classInfo.className}Mapper {
+
+ /**
+ * [新增]
+ * @author ${authorName}
+ * @date ${.now?string('yyyy/MM/dd')}
+ **/
+ int insert(${classInfo.className} ${classInfo.className?uncap_first});
+
+ /**
+ * [刪除]
+ * @author ${authorName}
+ * @date ${.now?string('yyyy/MM/dd')}
+ **/
+ int delete(int id);
+
+ /**
+ * [更新]
+ * @author ${authorName}
+ * @date ${.now?string('yyyy/MM/dd')}
+ **/
+ int update(${classInfo.className} ${classInfo.className?uncap_first});
+
+ /**
+ * [查詢] 根據主鍵 id 查詢
+ * @author ${authorName}
+ * @date ${.now?string('yyyy/MM/dd')}
+ **/
+ ${classInfo.className} load(int id);
+
+ /**
+ * [查詢] 分頁查詢
+ * @author ${authorName}
+ * @date ${.now?string('yyyy/MM/dd')}
+ **/
+ List<${classInfo.className}> pageList(int offset,int pagesize);
+
+ /**
+ * [查詢] 分頁查詢 count
+ * @author ${authorName}
+ * @date ${.now?string('yyyy/MM/dd')}
+ **/
+ int pageListCount(int offset,int pagesize);
+
+}
diff --git a/generator-web/src/main/resources/templates/code-generator/mybatis/mybatis.ftl b/generator-web/src/main/resources/templates/code-generator/mybatis/mybatis.ftl
index df609e5..c3312e0 100644
--- a/generator-web/src/main/resources/templates/code-generator/mybatis/mybatis.ftl
+++ b/generator-web/src/main/resources/templates/code-generator/mybatis/mybatis.ftl
@@ -1,89 +1,89 @@
-
-
-
-
-
- <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
- <#list classInfo.fieldList as fieldItem >
-
- #list>
- #if>
-
-
-
- <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
- <#list classInfo.fieldList as fieldItem >
- `${fieldItem.columnName}`<#if fieldItem_has_next>,#if>
- #list>
- #if>
-
-
-
- INSERT INTO ${classInfo.tableName}
-
- <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
- <#list classInfo.fieldList as fieldItem >
- <#if fieldItem.columnName != "id_" >
- ${r""}
- `${fieldItem.columnName}`<#if fieldItem_has_next>,#if>
- ${r""}
- #if>
- #list>
- #if>
-
-
- <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
- <#list classInfo.fieldList as fieldItem >
- <#if fieldItem.columnName != "id_" >
- <#--<#if fieldItem.columnName="addtime" || fieldItem.columnName="updatetime" >
- ${r""}
- NOW()<#if fieldItem_has_next>,#if>
- ${r""}
- <#else>-->
- ${r""}
- ${r"#{"}${fieldItem.fieldName}${r"}"}<#if fieldItem_has_next>,#if>
- ${r""}
- <#--#if>-->
- #if>
- #list>
- #if>
-
-
-
-
- DELETE FROM ${classInfo.tableName}
- WHERE `id_` = ${r"#{id}"}
-
-
-
- UPDATE ${classInfo.tableName}
-
- <#list classInfo.fieldList as fieldItem >
- <#if fieldItem.columnName != "id_" && fieldItem.columnName != "AddTime" && fieldItem.columnName != "UpdateTime" >
- ${r""}${fieldItem.columnName} = ${r"#{"}${fieldItem.fieldName}${r"}"}<#if fieldItem_has_next>,#if>${r""}
- #if>
- #list>
-
- WHERE `id_` = ${r"#{"}id${r"}"}
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+ <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
+ <#list classInfo.fieldList as fieldItem >
+
+ #list>
+ #if>
+
+
+
+ <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
+ <#list classInfo.fieldList as fieldItem >
+ ${fieldItem.columnName}<#if fieldItem_has_next>,#if>
+ #list>
+ #if>
+
+
+
+ INSERT INTO ${classInfo.tableName}
+
+ <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
+ <#list classInfo.fieldList as fieldItem >
+ <#if fieldItem.columnName != "id" >
+ ${r""}
+ ${fieldItem.columnName}<#if fieldItem_has_next>,#if>
+ ${r""}
+ #if>
+ #list>
+ #if>
+
+
+ <#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
+ <#list classInfo.fieldList as fieldItem >
+ <#if fieldItem.columnName != "id" >
+ <#--<#if fieldItem.columnName="addtime" || fieldItem.columnName="updatetime" >
+ ${r""}
+ NOW()<#if fieldItem_has_next>,#if>
+ ${r""}
+ <#else>-->
+ ${r""}
+ ${r"#{"}${fieldItem.fieldName}${r"}"}<#if fieldItem_has_next>,#if>
+ ${r""}
+ <#--#if>-->
+ #if>
+ #list>
+ #if>
+
+
+
+
+ DELETE FROM ${classInfo.tableName}
+ WHERE id = ${r"#{id}"}
+
+
+
+ UPDATE ${classInfo.tableName}
+
+ <#list classInfo.fieldList as fieldItem >
+ <#if fieldItem.columnName != "id" && fieldItem.columnName != "AddTime" && fieldItem.columnName != "UpdateTime" >
+ ${r""}${fieldItem.columnName} = ${r"#{"}${fieldItem.fieldName}${r"}"}<#if fieldItem_has_next>,#if>${r""}
+ #if>
+ #list>
+
+ WHERE id = ${r"#{"}id${r"}"}
+
+
+
+
+
+
+
+
+
\ No newline at end of file