Go to file
wuy bb8e1578c4 update .gitignore 2019-06-14 11:11:39 +08:00
diboot-core 代码精简与优化 2019-06-02 15:48:09 +08:00
diboot-docs 1. 新建基于vuepress的文档模块;2. 新建diboot-shiro认证授权模块;3. 基于shiro实现到每个接口级别的RBAC授权;4. 实现便于扩展认证方式(比如微信公众号、企业微信等)的认证架构设计,并且便于多种认证方式同时使用。 2019-06-06 19:41:00 +08:00
diboot-example update .gitignore 2019-06-14 11:11:39 +08:00
diboot-shiro 忽略gradle配置文件 2019-06-14 11:06:55 +08:00
.gitignore update .gitignore 2019-06-14 11:11:39 +08:00
README.md 更新readme,增加注解使用说明 2019-05-25 14:37:09 +08:00
build.gradle 优化lombok引入方式 2019-06-06 11:02:07 +08:00
gradlew 初始导入项目目录结构: 2019-01-25 13:32:24 +08:00
gradlew.bat 初始导入项目目录结构: 2019-01-25 13:32:24 +08:00
settings.gradle 1. 新建基于vuepress的文档模块;2. 新建diboot-shiro认证授权模块;3. 基于shiro实现到每个接口级别的RBAC授权;4. 实现便于扩展认证方式(比如微信公众号、企业微信等)的认证架构设计,并且便于多种认证方式同时使用。 2019-06-06 19:41:00 +08:00

README.md

diboot-v2

diboot 2.0版本项目,实现: diboot-core全新内核 + diboot-devtools代码生成。

diboot-core: 优化内核

全新精简内核主要实现单表CRUD和多表关联绑定的无SQL实现方案并提供其他常用开发场景的简单封装。

单表CRUD无SQL

基于Mybatis-Plus实现Mybatis-Plus具备通用Mapper方案和灵活的查询构造器

多表关联查询无SQL适用于大多数场景拆分成单表查询自动实现结果绑定

通过注解实现多数场景下的关联查询无SQL

1. 注解自动绑定元数据(枚举值)的显示值Label
@BindMetadata(type="GENDER", field = "gender")
private String genderLabel;
2. 注解自动绑定其他表的字段
// 支持关联条件+附加条件绑定字段
@BindField(entity=Department.class, field="name", condition="department_id=id AND code IS NOT NULL")
private String deptName;

// 支持通过中间表的级联关联绑定字段
@BindField(entity = Organization.class, field="name", condition="this.department_id=department.id AND department.org_id=id")
private String orgName;
3. 注解自动绑定其他表实体Entity
// 支持关联条件+附加条件绑定Entity
@BindEntity(entity = Department.class, condition="department_id=id")
private Department department;

// 通过中间表的级联关联绑定Entity支持附加条件
@BindEntity(entity = Organization.class, condition = "this.department_id=department.id AND department.org_id=id AND department.deleted=0")
private Organization organization;
4. 注解自动绑定其他表实体集合List
// 支持关联条件+附加条件绑定多个Entity
@BindEntityList(entity = Department.class, condition = "id=parent_id")
private List<Department> children;

// 通过中间表的 多对多关联 绑定Entity支持附加条件
@BindEntityList(entity = Role.class, condition="this.id=user_role.user_id AND user_role.role_id=id")
private List<Role> roleList;

本地运行example需先执行/resources/init-mysql.sql到数据库。

diboot-devtools 代码生成工具

提供数据库表管理功能

提供CRUD及关联绑定的相关代码生成Entity,VO,Service,Mapper,Controller...

diboot-example: 示例

各组件使用示例项目

...