关于Diboot
设计目标
Diboot是一个主要包含diboot-core全新内核、diboot-devtools代码生成平台、diboot-iam身份认证等的轻代码开发平台,旨在用更少的代码,更加自动化,更加便捷的开发方式来快速开发Java web应用的整套解决方案。
核心特性
- 简单的上手体验,在基于springboot的项目中,引入依赖,配置好相对路径即可使用;
- 广泛的数据库支持,支持较为常用的五种数据库(MySQL,ORACLE,SQLServer,PostgreSQL,MariaDB);
- 省心的代码生成体验,代码将自动生成到项目相应的目录下,无需过多调整代码文件路径等;
- 更好的配置体验,可视化的数据库与代码生成相关配置和操作,无需过多学习,分分钟上手,轻松开启自动化开发之门;
- 较为智能的数据库与代码的联动更新,数据库表结构更改后,可以同步地更改对应文件的代码,而不影响到你自己写的代码;
- 简洁易用的关联解决方案,基础框架中依靠注解实现的数据关联(一对一、一对多、多对多、数据字典关联等),将关联问题标准化了;
- 常规的关联关系自动化处理,对数据关联设置简单,代码生成与更新也可以自动支持一对一、一对多、多对多、数据字典关联等,将关联问题自动化了;
- 开发过程的数据结构更改记录,开发以及维护过程中对数据库相关表的数据结构更改可以被记录,并写入到对应的数据库更改日志文件中,便于项目维护过程中提取表结构更改,便于您同步到其他库的工作;
- 基于RBAC角色权限模型的IAM后端组件,便于对需要用户角色权限场景的开发工作;
- lombok相关支持,自动生成代码可以支持启用lombok的代码形式;
- swagger相关支持,自动生成代码,支持启用swagger的项目,将自动生成相关注解;
- 大道至简,依赖少、简便轻量、灵活性高。
如需了解更多,可以查看往期文章以及oschina中的diboot主页和官网网站
版本概述
Diboot2.0.4已于近期发布,我们在用户朋友们的反馈与建议下,对diboot-core和diboot-devtoools进行了系列优化和相关bug修复,同时该版本新增了后端的IAM模块的RC版本。
Diboot Core 2.0.4
BUG修正
- 通过Spring获取service实例如果是代理的情况下,解析不到泛型Entity的问题;
- 修复在n-n关联的注解绑定中,关联数据被物理删除后,关联绑定报错的问题。
新特性
- 构建工具由gradle切换到maven
- PagingJsonResult增加IPage参数构造方法,支持将mybatis-plus中的Ipage转换为PagingJsonResult();
- BaseCrudRestController增加afterDeleted(),用于删除接口中删除记录之后的处理流程重写;
- BaseService,BaseCrudRestController增加可根据id列表批量删除多个记录的接口batchDeleteEntities;
- DictionaryService.getKeyValueList()查询结果将按照sort_id排序;
- DictionaryService增加createDictAndChildren和deleteDictAndChildren接口,支持同时添加/删除父子节点;
- BeanUtils增加distinctByKey(list, key)方法,支持对List按指定字段去重;
- /list的列表接口查询功能中,url中的空字符串参数不再参与构建QueryWrapper;
- BaseConfig增加取不到返回指定默认值的方法getProperty(String key, String defaultValue);
- EntityList更名为ValidList并简化使用调用,用于校验List中的每条数据;
- 优化完善example示例代码。
Diboot Devtools 2.0.4
BUG修正
- PostgreSQL配置未指定schema时,提取schema错误的问题
- deleted, createTime字段不存在时生成的带注解属性的类型错误的问题
新特性
- 生成的Entity、VO中增加 @accessors(chain = true) Lombok注解,默认支持链式调用;
- Swagger @API注解优化:value改为tags: @API(tags=””) ;
- 优化devtools启动成功的打印信息为顶格显示,便于找到该提示消息;
- 如果依赖了diboot-iam-base组件,启动项目初始化时将自动生成身份认证组件IAM-base所需的controller相关代码;
- 如果依赖了diboot-iam-base组件,生成Controller中将添加BindPermission注解;
diboot-iam-base 2.0.4-RC2
新特性
- 开箱即用的RBAC角色权限模型
- 基于JWT的认证授权,支持申请token、刷新token
- 简化的BindPermission注解,支持菜单+操作两级权限控制
- 支持BindPermission注解自动收集并更新至数据表
- 预置用户名密码登录(密码带盐加密), 并支持多种登录方式扩展
- 预置默认用户实体,并支持灵活替换用户类型
- 默认启用内存缓存,并支持自定义缓存实现类
转自 https://www.oschina.net/news/113107/diboot-2-0-4-released