low-code
low-code 是一款为 java 打造的低代码平台。
开源地址:
https://github.com/houbb/low-code
特性
- 支持基本的增删改查
- 支持枚举值处理
- 支持 EXCEL 导出
- 代码一键生成
- 生产代码一键清理
技术选型
springboot 容器
mybatis-plus+druid+mysql 数据库
vue+element-ui 页面
变更日志
变更日志
快速开始
需要
jdk 1.7+
maven 3.x+
mysql 5.7
配置调整
此处使用的是 mysql-5.7,数据库脚本见 mysql-5.7.sql
在 mysql 中执行上述脚本,默认的 mysql 登录信息为 root/123456。
如果需要调整,修改 application.yml 文件。
代码生成
执行 low-code-gen 模块中的 LowCodeGenerator#main() 方法,指定生成的表。
我们以用户表作为入门的例子:
create table user
(
id int unsigned auto_increment comment '自增主键' primary key,
user_id varchar(32) not null comment '用户标识',
user_name varchar(32) not null comment '用户名称',
remark varchar(64) not null comment '用户描述',
status varchar(1) not null default 'S' comment '用户状态',
app_name varchar(64) not null default 'system' comment '应用名称',
operator_name varchar(64) not null default 'system' comment '操作员名称',
create_time timestamp default CURRENT_TIMESTAMP not null comment '创建时间戳',
update_time timestamp default CURRENT_TIMESTAMP not null on update CURRENT_TIMESTAMP comment '更新时间戳'
) comment '用户表' ENGINE=Innodb default charset=UTF8 auto_increment=1;
针对枚举值我们可以指定配置到 lc_enum_mapping 表中。
启动
直接运行 Application#main() 方法,即可启动应用。
生成示例
用户界面
分支特性
v0.0.1-基本 dal 等实现
v0.0.2-实现增删改等功能
v0.0.3-实现分页查询
v0.0.4-实现 EXCEL 导出
v0.0.5-实现枚举值映射
拓展阅读
后期 Road-MAP
- [ ] 根据 @TableId 获取对应的 id 字段
- [ ] 批量删除
- [ ] 新增/更新时过滤 id 和时间
- [ ] 时间类型查询优化(date 控件)
- [ ] 导入功能
- [ ] 动态菜单 + 下载中心
- [ ] EXCEL 导出枚举值处理
- [x] 枚举值的统一处理
- [x] 依赖名称生成更加优雅,变为首字母小写
- [x] 导出功能
- [x] 查询功能
数据源
- [ ] 其他数据库支持
- [ ] 其他前端语言支持
- [ ] 其他后端语言支持
自动生成
- gen-test-plugin 接入
- swagger 接入
- JAPIDocs 接入
可视化
- 页面化
- 高度定制化