Skip to content

Commit 72257e0

Browse files
authored
Merge pull request #59 from moshowgame/201911dev
Merge from 201911dev
2 parents 04b9294 + 1bb8881 commit 72257e0

File tree

12 files changed

+375
-327
lines changed

12 files changed

+375
-327
lines changed

README.md

Lines changed: 66 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,65 +1,75 @@
1+
# SpringBootCodeGenerator
12
![image](https://img.shields.io/badge/SpringBoot2-%E2%98%85%E2%98%85%E2%98%85%E2%98%85%E2%98%85-brightgreen.svg)
23
![image](https://img.shields.io/badge/Freemarker-%E2%98%85%E2%98%85%E2%98%85%E2%98%85%E2%98%85-brightgreen.svg)
34
![image](https://img.shields.io/badge/CodeGenerator-%E2%98%85%E2%98%85%E2%98%85%E2%98%85%E2%98%85-brightgreen.svg)
45
[![Build Status](https://travis-ci.org/moshowgame/SpringBootCodeGenerator.svg?branch=master)](https://travis-ci.org/moshowgame/SpringBootCodeGenerator)
5-
<br>
66

7-
SpringBootCodeGenerator
8-
----
9-
√基于SpringBoot2+Freemarker的代码生成器,√以释放双手为目的,√支持mysql/oracle/pgsql三大数据库,<br>
10-
√用DDL-SQL语句生成JPA/JdbcTemplate/Mybatis/MybatisPlus/BeetlSQL相关代码.<br><br>
11-
另外,感谢bejson三叔将他部署在 http://java.bejson.com/generator 上,目前是besjon专供工具(线上版本不一定是最新的,会有延迟,请谅解,谢谢).
12-
<br><br>
13-
<table><tbody>
14-
<tr><td>访问路径</td> <td>http://127.0.0.1:1234/generator</td></tr>
15-
<tr><td>在线地址</td> <td>http://java.bejson.com/generator</td></tr>
16-
<tr><td>CSDN博客</td> <td>http://zhengkai.blog.csdn.net</td></tr>
17-
<tr><td></td> <td></td></tr>
18-
<tr><td>更新日期</td> <td>更新内容</td></tr>
19-
<tr><td>20191123<td>1.移除频繁出错和被过滤的layer,改为jquery-toast. 2.Util功能优化,新增json和xml.</td></tr>
20-
<tr><td>20191116<td>优化对primary关键字的处理(感谢@liujiansgit的反馈). </td></tr>
21-
<tr><td>20191115<td>1.添加tinyint类型转换(感谢@lixiliang&@liujiansgit的Suggestion) 2.添加一键复制功能(感谢@gaohanghang的Suggestion) 3.Mybatis的insert增加keyProperty="id"用于返回自增id(感谢@88888888888888888888的Suggestion) 4.优化date类型的支持(感谢@SteveLsf的反馈) 5.其他一些优化. </td></tr>
22-
<tr><td>20191015<td>修复jdbcTemplates中insert语句第一个字段丢失的问题. </td></tr>
23-
<tr><td>20190915<td>1.添加对象getset模板 2.添加sql模板 3.启动类添加日志输出,方便项目使用(感谢@gaohanghang 的pull request) </td></tr>
24-
<tr><td>20190910-2<td>优化以及更新Maven依赖,减少打包体积. </td></tr>
25-
<tr><td>20190910-1<td>1.修复mapper接口load方法,但是xml中方法不匹配问题 2.移除mapper中CRUD时的@param 注解,会影响xml的解析(感谢@caojiantao的反馈).3.优化MyBatis的xml文件对Oracle的支持.(感谢@wylove1992的反馈) 4.新增对boolean的处理(感谢@violinxsc的反馈)以及优化tinyint类型生成boolean类型问题(感谢@hahaYhui的反馈) </td></tr>
26-
<tr><td>20190909<td>添加是否下划线转换为驼峰的选择(感谢@youngking28 的pull request).</td></tr>
27-
<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>
28-
<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>
29-
<tr><td>20190429<td>新增返回封装工具类设置,优化对oracle注释comment on column的支持(感谢@liukex反馈),优化对普通和特殊storage关键字的判断(感谢@AhHeadFloating的反馈 ).</td></tr>
30-
<tr><td>20190211<td>提交gitignore,解决StringUtils.lowerCaseFirst潜在的NPE异常,校验修改为@RequestParam参数校验,lombok之@Data和@Slf4j优化,fix JdbcDAO模板类名显示为中文问题,WebMvcConfig整合MessageConverter,模板代码分类(感谢@liutf和@tfgzs的pull request).</td></tr>
31-
<tr><td>20190210<td>实体生成规则切换为包装类型,不再采用基本数据类型,为实体类生成添加显示的默认构造方法(感谢@h2so的pull request).</td></tr>
32-
<tr><td>20190106<td>修复处理number/decimal(x,x)类型的逻辑(感谢@arthaschan的反馈),修复JdbcTemplates模板两处错误(感谢@everflourish的反馈).</td></tr>
33-
<tr><td>20181212<td>首页UI优化,新增MybatisPlus模块(感谢@三叔同事的建议),修复作者名和包名获取失败问题(感谢@Yanch1994的反馈).</td></tr>
34-
<tr><td>20181122<td>优化正则表达式点号的处理,优化处理字段类型,对number类型增加int,long,BigDecimal的区分判断(感谢@lshz0088的指导).</td></tr>
35-
<tr><td>20181108<td>修复非字段描述"KEY FK_xxxx (xxxx)"导致生成KEY字段情况(感谢@tornadoorz反馈).</td></tr>
36-
<tr><td>20181018<td>支持double(x,x)的类型,以及comment里面包含一些特殊字符的处理(感谢@tanwubo的反馈).</td></tr>
37-
<tr><td>20181010<td>CDN变更,修复CDN不稳定导致网页js报错问题.</td></tr>
38-
<tr><td>20181003<td>新增element-ui/bootstrap生成.</td></tr>
39-
<tr><td>20181002<td>修复公共CDN之Layer.js404问题,导致项目无法生成.</td></tr>
40-
<tr><td>20180927<td>优化COMMENT提取逻辑,支持多种复杂情况的注释(感谢@raodeming的反馈).</td></tr>
41-
<tr><td>20180926<td>全新BeetlSQL模块,以及一些小细节优化(感谢@三叔同事的建议).</td></tr>
42-
<tr><td>20180925<td>优化SQL表和字段备注的推断,包括pgsql/oralce的comment on column/table情况处理等.</td></tr>
43-
<tr><td>20180918<td>优化SQL类型推断.优化PrimaryKey判断.修复jpacontroller中Repository拼写错误问题.</td></tr>
44-
<tr><td>20180917<td>全新首页,静态文件全部采用CDN.新增jdbcTemplate模块.</td></tr>
45-
<tr><td>20180916-2<td>优化oracle支持,优化DDL语句中"或者'或者空格的支持.</td></tr>
46-
<tr><td>20180916-1<td>补充char/clob/blob/json等类型,如果类型未知,默认为String.</td></tr>
47-
<tr><td>20180915<td>新增Swagger-UI模板.修复一些命名和导入问题.JPA的Entity默认第一个字段为Id,如果不是请手工修改.</td></tr>
48-
<tr><td>20180913<td>修复字段没有描述以及类型为DATE型导致的问题.新增JPA的Controller模板.</td></tr>
49-
<tr><td>20180831<td>初始化项目.新增JPA系列Entity+Repository模板.</td></tr>
50-
</tbody></table>
517

52-
<table><tbody>
53-
<tr><td>字段名</td> <td>说明</td></tr>
54-
<tr><td>packageName</td> <td>自定义的包名</td></tr>
55-
<tr><td>authorName</td> <td>自定义的作者名</td></tr>
56-
<tr><td>returnUtil</td> <td>自定义的返回Util</td></tr>
57-
<tr><td>tableName</td> <td>sql中的表名</td></tr>
58-
<tr><td>className</td> <td>java类名</td></tr>
59-
<tr><td>classComment</td> <td>sql表备注/java类备注</td></tr>
60-
<tr><td>fieldName</td> <td>字段名</td></tr>
61-
<tr><td>fieldComment</td> <td>字段备注</td></tr>
62-
</tbody></table>
8+
# Description
9+
- √ 基于SpringBoot2+Freemarker+Bootstrap
10+
- √ 以释放双手为目的
11+
- √ 支持mysql/oracle/pgsql三大数据库
12+
- √ 用DDL-SQL语句生成JPA/JdbcTemplate/Mybatis/MybatisPlus/BeetlSQL相关代码.
13+
14+
15+
# Url
16+
17+
|访问路径|http://localhost:1234/generator|
18+
|-|-|
19+
|在线地址|http://java.bejson.com/generator|
20+
|CSDN博客|http://zhengkai.blog.csdn.net|
21+
22+
感谢bejson三叔将他部署在[BEJSON](www.bejson.com)上,目前是besjon专供工具(线上版本不一定是最新的,会有延迟,请谅解,谢谢).
23+
24+
25+
# Update
26+
27+
|更新日期|更新内容|
28+
|-|-|
29+
|20191124|1.java代码结构优化. 2.新增简单的json生成模式 3.新增简单的正则表达式匹配模式(感谢@ydq的贡献) 4.新增对复制String代码中的乱SQL代码的支持 5.优化对JSON的父子节点/处理,JSONObject和JSONArray节点处理,子节点缺失'{'头处理|
30+
|20191123|1.移除频繁出错和被过滤的layer,改为jquery-toast. 2.Util功能优化,新增json和xml.|
31+
|20191116|优化对primary关键字的处理(感谢@liujiansgit的反馈). |
32+
|20191115|1.添加tinyint类型转换(感谢@lixiliang&@liujiansgit的Suggestion) 2.添加一键复制功能(感谢@gaohanghang的Suggestion) 3.Mybatis的insert增加keyProperty="id"用于返回自增id(感谢@88888888888888888888的Suggestion) 4.优化date类型的支持(感谢@SteveLsf的反馈) 5.其他一些优化. |
33+
|20191015|修复jdbcTemplates中insert语句第一个字段丢失的问题. |
34+
|20190915|1.添加对象getset模板 2.添加sql模板 3.启动类添加日志输出,方便项目使用(感谢@gaohanghang 的pull request) |
35+
|20190910-2|优化以及更新Maven依赖,减少打包体积. |
36+
|20190910-1|1.修复mapper接口load方法,但是xml中方法不匹配问题 2.移除mapper中CRUD时的@param 注解,会影响xml的解析(感谢@caojiantao的反馈).3.优化MyBatis的xml文件对Oracle的支持.(感谢@wylove1992的反馈) 4.新增对boolean的处理(感谢@violinxsc的反馈)以及优化tinyint类型生成boolean类型问题(感谢@hahaYhui的反馈) |
37+
|20190909|添加是否下划线转换为驼峰的选择(感谢@youngking28 的pull request).|
38+
|20190518|1.优化注释 2.修改 mybatis模板中 controller注解 3.修改 mybatis模板中 dao文件使用为 mapper文件 4.修改 mybatis模板中 service实现类中的一个 bug 5.修改 index.ftl文件中 mybatis模板的 dao -> mapper(感谢@unqin的pull request)|
39+
|20190511|优化mybatis模块的dao和xml模板,修改dao接口注解为@Repository,所有dao参数改为包装类,删除update语句最后的UpdateTime = NOW(),修改dao接口文件的方法注释使其更符合javaDoc的标准,修改insert语句增加插入行主键的返回,修改load的方法名为selectByPrimaryKey,修改xml的update语句新增动态if判空,修改xml的insert语句新增动态插入判空,更符合mybatisGenerator标准(感谢@Archer-Wen的贡献 ).|
40+
|20190429|新增返回封装工具类设置,优化对oracle注释comment on column的支持(感谢@liukex反馈),优化对普通和特殊storage关键字的判断(感谢@AhHeadFloating的反馈 ).|
41+
|20190211|提交gitignore,解决StringUtils.lowerCaseFirst潜在的NPE异常,校验修改为@RequestParam参数校验,lombok之@Data@Slf4j优化,fix JdbcDAO模板类名显示为中文问题,WebMvcConfig整合MessageConverter,模板代码分类(感谢@liutf@tfgzs的pull request).|
42+
|20190210|实体生成规则切换为包装类型,不再采用基本数据类型,为实体类生成添加显示的默认构造方法(感谢@h2so的pull request).|
43+
|20190106|修复处理number/decimal(x,x)类型的逻辑(感谢@arthaschan的反馈),修复JdbcTemplates模板两处错误(感谢@everflourish的反馈).|
44+
|20181212|首页UI优化,新增MybatisPlus模块(感谢@三叔同事的建议),修复作者名和包名获取失败问题(感谢@Yanch1994的反馈).|
45+
|20181122|优化正则表达式点号的处理,优化处理字段类型,对number类型增加int,long,BigDecimal的区分判断(感谢@lshz0088的指导).|
46+
|20181108|修复非字段描述"KEY FK_xxxx (xxxx)"导致生成KEY字段情况(感谢@tornadoorz反馈).|
47+
|20181018|支持double(x,x)的类型,以及comment里面包含一些特殊字符的处理(感谢@tanwubo的反馈).|
48+
|20181010|CDN变更,修复CDN不稳定导致网页js报错问题.|
49+
|20181003|新增element-ui/bootstrap生成.|
50+
|20181002|修复公共CDN之Layer.js404问题,导致项目无法生成.|
51+
|20180927|优化COMMENT提取逻辑,支持多种复杂情况的注释(感谢@raodeming的反馈).|
52+
|20180926|全新BeetlSQL模块,以及一些小细节优化(感谢@三叔同事的建议).|
53+
|20180925|优化SQL表和字段备注的推断,包括pgsql/oralce的comment on column/table情况处理等.|
54+
|20180918|优化SQL类型推断.优化PrimaryKey判断.修复jpacontroller中Repository拼写错误问题.|
55+
|20180917|全新首页,静态文件全部采用CDN.新增jdbcTemplate模块.|
56+
|20180916|1.优化oracle支持,优化DDL语句中"或者'或者空格的支持. 2.补充char/clob/blob/json等类型,如果类型未知,默认为String.|
57+
|20180915|新增Swagger-UI模板.修复一些命名和导入问题.JPA的Entity默认第一个字段为Id,如果不是请手工修改.|
58+
|20180913|修复字段没有描述以及类型为DATE型导致的问题.新增JPA的Controller模板.|
59+
|20180831|初始化项目.新增JPA系列Entity+Repository模板.|
60+
61+
# FieldName
62+
|字段名|说明|
63+
|-|-|
64+
|packageName|自定义的包名|
65+
|authorName|自定义的作者名|
66+
|returnUtil|自定义的返回Util|
67+
|tableName|sql中的表名|
68+
|className|java类名|
69+
|classComment|sql表备注/java类备注|
70+
|fieldName|字段名|
71+
|fieldComment|字段备注|
72+
6373

6474
<img src="./codegenerator1.png">
6575
<img src="./codegenerator2.png">

generator-web/src/main/java/com/softdev/system/generator/config/GlobalDefaultExceptionHandler.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,19 @@
22

33
import javax.servlet.http.HttpServletRequest;
44

5+
import com.softdev.system.generator.entity.ReturnT;
56
import org.springframework.web.bind.annotation.ControllerAdvice;
67
import org.springframework.web.bind.annotation.ExceptionHandler;
78
import org.springframework.web.bind.annotation.ResponseBody;
89

9-
import com.softdev.system.generator.util.ApiReturnObject;
10-
import com.softdev.system.generator.util.ApiReturnUtil;
11-
1210
@ControllerAdvice
1311
public class GlobalDefaultExceptionHandler {
1412

1513
@ExceptionHandler(Exception.class)
1614
@ResponseBody
17-
public ApiReturnObject defaultExceptionHandler(HttpServletRequest req,Exception e) {
15+
public ReturnT defaultExceptionHandler(HttpServletRequest req,Exception e) {
1816
e.printStackTrace();
19-
//return new ApiReturnObject("01","server error", e.getMessage());
20-
return ApiReturnUtil.error("服务器异常",e.getMessage());
17+
return new ReturnT<>(ReturnT.FAIL_CODE, e.getMessage());
2118
}
2219

2320
}

0 commit comments

Comments
 (0)