项目介绍
JeeFly
是一款基于SpringBoot+代码生成器的快速开发平台!采用前后端分离架构:SpringBoot,SpringBoot Cloud,Mybatis,Mybatis Plus,Shiro,JWT,Vue,Vue-element-admin。强大的代码生成器让前端和后台代码一键生成,不需要写任何代码,
JeeFly在提高UI能力
的同时,降低了前后分离的开发成本,JeeFly提供一系列在线智能开发:在线代码生成、在线配置表单、在线设计流程等等。
JeeFly宗旨是:
简单功能代码生成配置生成(在线配置表单、在线设计流程、在线设计表单),复杂功能由代码生成器生成进加手动修改合并,既保证了智能又兼顾了灵活;
业务流程采用工作流来实现、扩展出任务接口,供开发编写业务逻辑,表单提供多种解决方案:同时实现了流程与表单的分离设计(松耦合)、并支持任务节点灵活配置,减少了开发人员的工作量。
- 官方网站: https://www.jeefly.cn
- QQ交流群:①744200105
- 在线演示: https://www.jeefly.cn/cloud 用户名:admin 密码:admin123@
- 版本日志: https://docs.jeefly.cn/
技术架构:
后端技术:SpringBoot_2.2.10.RELEASE + Mybatis-plus_3.1.0 + Shiro_1.8.0 + Jwt_3.7.0 + Swagger-ui + liquibase + Redis 前端技术:vue-element-admin + Vue + element + vxe-table + Webpack其他技术:Druid(数据库连接池)、Logback(日志工具) 、poi(Excel工具)、lombok(简化代码)项目构建:Maven、Jdk8
前端开发必读文档:
前端UI组件:vue-element-admin element vxe-table
VUE基础知识:https://cn.vuejs.org/v2/guide
系统截图
PC端
在线接口文档
代码生成器使用教程
代码生成器简介
功能介绍:
JeeFly代码生成器非常强大:支持单表、一对多、一对一、树模型生成,生成的代码包括前台和后台,生成后直接使用,无需修改。
功能说明:一键生成的代码(包括:controller、service、dao、mapper、entity、vue)
支持自定义代码生成器模板:采用freeMarker语法模板文件,目录结构与实际目录保持一致,结构非常清晰
在线代码生成器
菜单路径:
代码生成->表单管理
在线建表,配置表单控件,所见即所得,支持更多组件 比如:字典、下拉搜索组件、dialog组件、上传组件、富文本等等)
创建演示数据库及表
- 演示使用
CREATE DATABASE `test` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
use test
CREATE TABLE `sys_user_test` (
`ID` varchar(32) NOT NULL COMMENT '用户ID',
`USERNAME` varchar(32) NOT NULL COMMENT '用户帐号',
`LOGINPWD` varchar(128) NOT NULL COMMENT '用户登录密码',
`REALNAME` varchar(128) DEFAULT NULL COMMENT '用户姓名',
`SEX` decimal(11,0) DEFAULT NULL COMMENT '性别',
`AGE` decimal(11,0) DEFAULT NULL COMMENT '年龄',
`BIRTHDAY` datetime DEFAULT NULL COMMENT '生日',
`EMAIL` varchar(64) DEFAULT NULL COMMENT '电子邮件',
`ENTRYDATE` datetime DEFAULT NULL COMMENT '入职时间',
`POSITION` varchar(64) DEFAULT NULL COMMENT '职位',
`STAFFNO` varchar(32) DEFAULT NULL COMMENT '证件类型',
`TYPECERT` varchar(8) DEFAULT NULL COMMENT '证件类型',
`CERTNO` varchar(32) DEFAULT NULL COMMENT '证件号',
`PHONE` varchar(16) DEFAULT NULL COMMENT '手机号码',
`ADDRESS` varchar(255) DEFAULT NULL COMMENT '联系地址',
`USTATUS` decimal(11,0) DEFAULT NULL COMMENT '用户状态:0初始化(待审核),1正常在用,2冻结帐号',
PRIMARY KEY (`ID`)
);
数据源管理
- 默认会有一条master的数据源记录,即当前system模块链接的数据库。我们可以新增一个测试的数据源。
-
点击
新增
按钮,填写相关数据源信息。可以点击测试链接
按钮检测配置,没有问题,点击保存
其中
url
要填写jdbc链接的完整地址,图例中使用本地mysql
中新建的test
库,为:jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&serverTimezone=GMT%2B8
- 保存成功,即可看到新增的数据源记录。
代码生成器配置
字段类型
- 定义了不同数据库可以使用的字段类型
- 可以通过点击
编辑
按钮,进行新增、修改或删除字段类型
Java类型
- 定义了Java中可以使用的不同类型
- 可以
新增
、编辑
和删除
,还可以增加自定义Java类型
控件类型
- 定义前端页面中可以使用的不同的控件类型
- 可以
新增
、编辑
和删除
,还可以增加自定义控件类型
验证类型
- 定义前端页面需要校验的不同类型
查询类型
- 定义了多种查询数据库的方式
模板管理
- 在此模块,导入
单表
模板
- 可以
编辑
、复制
、删除
和下载
模板
表单管理
导入表单
- 初始情况下,是没有表单的。我们选择从
test
数据库导入新建的表单
- 选择数据源,选择要导入的表,点击
确定
配置表单
- 导入的表单默认是
未同步状态
。点击修改
,进行表单调整(新增
流程类似,配置好后,点击同步,会在数据库创建相应的表)
- 在
数据库表设置
,可以设置表相关信息(还是实体类名字),可以点击新增基础字段
,生成基础信息,设置好,点击下一步
对于``
- 在
Java实体类设置
,可以设置表字段对应的Java属性类型及名字,设置好,点击下一步
- 在
表单页面
,可以设置表单展示内容、控件类型及字典类型。注意,其中日期控件,需要点击编辑图标
,然后修改日期格式(默认是yyyy-MM-dd),这里我设置为:yyyy-MM-dd HH:mm:ss。设置好后,点击下一步
- 在
表单校验
中,可以设置是否可空以及校验类型,这里设置sex
和age
不可空,并设置age
的校验类型(点击设置),设置好后,点击下一步
- 在
列表页面
,设置列表查询中显示的查询条件及显示内容。设置好后,点击提交
- 提交成功后,点击
同步
,完成与数据库表结构的同步。
代码生成
- 点击
代码生成
- 设置好代码生成相关信息,点击
代码生成
(也可以下载)
- 生成成功后,会生成前端和后端的文件,然后重启后端,使生成的代码生效(生成的接口都是api开头)
前端文件:
.../jeefly-cloud-ui/src/api/modules/usertest/sysUserTestApi.js
.../jeefly-cloud-ui/src/views/modules/usertest/sysUserTest/components/detail.vue
.../jeefly-cloud-ui/src/views/modules/usertest/sysUserTest/view.vue
后端文件:
创建菜单
- 点击
创建菜单
配置菜单路径及名字等信息,点击确定
,然后刷新页面,即可看到生成的菜单
生成示例
- 访问前边生成的功能
新增/编辑
- 点击
新增
(或对要修改的记录点击编辑
)
- 录入信息后,点击
确定
,即可查看新增的数据
导出
- 点击
导出
,就会导出excel列表
导入
- 点击
导入
- 可以点击
上传数据模板下载
,获取导入数据的模板格式。 - 导入时,先点击
选取数据文件
,选择导入文件,选择是否生成新主键
和导入策略
, - 最后点击
导入数据
。
是否生成新主键
选择是
,则全部按照新增处理。当选择否
时,当主键有相同的数据时,如果选择忽略
,则跳过;如果选择更新
,则根据导入的数据进行更新。
查询
- 点击
搜索
,会显示出查询条件
- 输入条件,点击
查询
删除
- 可以批量删除,也可以单条删除