# generate_code_manager **Repository Path**: 1945605733/generate_code_manager ## Basic Information - **Project Name**: generate_code_manager - **Description**: 这是一款通过freemarker模板生成文件的代码生成器,能在前端 实时增加修改模板、设置配置信息, 前端vue+后台jfinal实现 后台实现了查询 表的信息、单表的所有字段信息 只要你freemarker够熟练 java的controller、service、dao、entity 和 前端vue 的html 都能够一键生成 能节省大量 写CRUD的时间 非常nice的一款代码生成器 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 32 - **Forks**: 16 - **Created**: 2018-06-11 - **Last Updated**: 2024-10-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # generate_code_manager #### 项目介绍 ### 我为什么想开源一个代码生成器? 现在的项目基本上属于前后端分离的 所以我们需要提供接口文档给前端。 没有API文档工具之前,大家都是手写API文档的,在什么地方书写的都有,我们公司是写word文档的,每个公司都有每个公司的玩法,无所谓好坏。 书写API文档的工具有很多,但是能称之为“框架”的,估计也只有swagger了。 【对swagger不了解的可以参考下 https://blog.csdn.net/i6448038/article/details/77622977 网上看到的】 但是使用swagger框架比较麻烦的就是注解写的比较多 例如下图: ![实体类](https://images.gitee.com/uploads/images/2018/0822/112702_23817e62_535567.png "实体类") ![controller](https://images.gitee.com/uploads/images/2018/0822/112803_214ff158_535567.png "controller") 自己手写注解的话工作量有点大,我的内心是有点拒绝的 :grin: ,然后跟我们总监聊了下这个事,说实体类这块可以考虑代码生成器减轻重复性工作,姜还是老的辣哈。 看了mybatis-plus的代码生成器的代码后,要使用的话是new AutoGenerator(),代码生成用的velocity引擎,我把velocity的模板拷到自己的项目中,一个新的类继承了AutoGenerator 重写了velocity获取模板路径的方法,然后在自己项目中的模板 用velocity的语法写了能生成单张表的增删改查,并且实体类和controller都加上swagger注解 ### 但是开发途中也发现了很多不足,需要改进的地方 例如:包括但不限于 有些字段需要加正则校验(手机号、邮箱、日期) 有的字段需要必填 还有的字段需要加上判断唯一性的校验 。。。 **这些都是我们手工需要增加的代码!!!** **虽说工作量不大但是挺繁琐的 所以就萌生了开源一个代码生成器,既造福了自己也方便大家** ### generate_code_manage简介: 这是一个可配置的代码生成器(只支持mysql) 通过查询表字段和页面上的设置和自己实现的模板 动态生成对应的文件 这个generate_code_manager系统目前经过本人的 https://gitee.com/1945605733/authManager【一个 权限管理的微服务】实战 大家可以放心使用不用担心有太多bug,有问题可以再群里问我,看到消息有时间我会及时回复的 ### 生成的java文件 代码有些凌乱需要手动的 **alt+shift+s+f(格式化代码)** **ctrl+shift+o(把多引入的包去掉)** ### 功能有: 项目管理 数据库连接管理 模板管理 配置管理 代码生成 #### 软件架构 后台:jfinal+freemarker 前台:vue+elementUi 为什么这个代码生成器 我前后端分离而不是整合成一个项目了? 现在基本上系统都是前后端分离了,加上我也想了解简单学习下vue~ #### 安装教程 ### 前台: 因为前台采用的是vue 所以需要先安装node.js https://nodejs.org/en/ (node.js官网地址) 1. 安装完成后 cmd 进入 ![输入图片说明](https://images.gitee.com/uploads/images/2018/0821/101326_ea2c4bc8_535567.png "屏幕截图.png") 这个 generate_code_manager_vue文件夹下面 执行npm install (下载vue依赖的组件) 2. 在执行 npm run dev (启动vue项目) ### 后台: 1.eclipse导入generate_code_manager_java 2.tomcat端口设置成8083【如果不用这个端口 可以改 generate_code_manager\generate_code_manager_vue\src\main.js 下面的axios.defaults.baseURL 这个配置即可】 数据库位置:generate_code_manager\generate_code_manager_java\启动说明\generate_code_manager.sql 有什么问题可以加群generate_code_manager群点我 #### 页面效果图 ![输入图片说明](https://images.gitee.com/uploads/images/2018/0823/090919_a42154cb_535567.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2018/0823/090941_e9e9360e_535567.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2018/0823/090959_e062da4b_535567.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2018/0823/091022_faf58904_535567.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2018/0823/091058_80de4c96_535567.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2018/0823/091109_95ace40d_535567.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2018/0823/091123_8e51d5b3_535567.png "屏幕截图.png")