# JoinSearch **Repository Path**: Deveik/JoinSearch ## Basic Information - **Project Name**: JoinSearch - **Description**: No description available - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-06-14 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # JoinSearch ## 简述 1. 提供可以查询用的字段和操作类型:对前端 2. 根据用户的选择封装查询用的计划:对数据库 ## 前置知识点 + Basic / Reflect + Basic / Annotation + Basic / Executor + ORM / Mybatis Plus + Logging / Logback ## 大概思路 TODO 后面需补充 1. 可以自定义拼接的各个字段的筛选条件、排序和聚合 2. 各个字段会对应某类型:字符串、数字(整形 Or 浮点)、日期时间 3. 各个类型又会对应某种包装方式:Mybatis Plus 中提供的 Compare、Nested、Join、Func 4. 用户可以自定义某类型,给予所拥有的包装方法,然后与字段关联 5. 使用自定义的 FunctionInterface 去承接 MP 中的方法和自定义的匿名函数 ## TODO List + [ ] 对于默认类可以进行总开关的控制 + [ ] 监控页面 + [ ] 查询方案统计 + [ ] 开启消息队列,聚合相似的查询方案 + [ ] 支持单表的默认匹配 + [ ] 支持连表的自动拼接 + [ ] 拆分 Mybatis Plus 的包装器 ## 参考资料 + [Mybatis 文档](https://mybatis.org/mybatis-3/zh/index.html) + [Mybatis Plus 文档](https://mp.baomidou.com/guide/) + [Group By 相关的关联函数](https://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html)